Andrew Steinborn
3a51bee052
Fix Checkstyle errors and update geriatric Checkstyle version
2021-03-01 19:41:35 -05:00
Andrew Steinborn
ba7ba70f4b
Connections -> HandlerNames
2021-02-21 21:03:06 -05:00
Andrew Steinborn
0294cfda56
Add PacketWriter interface.
2021-02-21 20:45:59 -05:00
Andrew Steinborn
28f12e2d7f
Merge remote-tracking branch 'origin/dev/2.0.0' into dev/2.0.0
2021-02-21 18:10:10 -05:00
Andrew Steinborn
0e05f5f308
Mostly brought 2.0.0 up to update with Velocity 1.1.5-SNAPSHOT changes.
...
I have not verified that this actually works.
2021-02-21 18:09:56 -05:00
Andrew Steinborn
699147c916
Merge branch 'dev/1.1.0' into dev/2.0.0
...
# Conflicts:
# api/build.gradle
# api/src/main/java/com/velocitypowered/api/proxy/connection/Player.java
# api/src/main/java/com/velocitypowered/api/proxy/player/TabList.java
# build.gradle
# proxy/build.gradle
# proxy/src/main/java/com/velocitypowered/proxy/Velocity.java
# proxy/src/main/java/com/velocitypowered/proxy/command/CommandNodeFactory.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BackendPlaySessionHandler.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BungeeCordMessageResponder.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/backend/VelocityServerConnection.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/client/ConnectedPlayer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundAvailableCommandsPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundJoinGamePacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundRespawnPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/MinecraftPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/EncryptionResponse.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/HeaderAndFooter.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/LoginPluginMessage.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/PluginMessage.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusPing.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusRequest.java
# proxy/src/main/java/com/velocitypowered/proxy/tablist/VelocityTabList.java
# proxy/src/main/java/com/velocitypowered/proxy/tablist/VelocityTabListLegacy.java
# proxy/src/test/java/com/velocitypowered/proxy/command/CommandManagerTests.java
2021-02-21 17:56:40 -05:00
Andrew Steinborn
72d47b5a3d
Don't advertise the BungeeCord plugin messaging channel if it is disabled.
2021-02-18 18:12:51 -05:00
David Mayr
648624d333
Check permissions before providing suggestions ( #430 )
2021-02-16 19:13:48 -05:00
Andrew Steinborn
1a768bda9d
We're going to need custom hash maps after all.
2021-02-16 01:15:58 -05:00
Andrew Steinborn
b94303d2be
Map command nodes being serialized by their identities
...
Fixes #429
2021-02-16 01:14:22 -05:00
Bastian
7a713e9379
Update bStats and migrate to new config file
...
This commit simplifies the Metrics class by using the new base module
from bStats. It also migrates to the new bStats config file that will
be used by plugins that integrate bStats. If a user disabled bStats in
the old config file, this setting will be copied to the new config file.
2021-02-12 20:29:07 +01:00
Camotoy
fb879cb498
Apply initial requested changes
2021-02-09 14:13:33 -05:00
Camotoy
d47b339908
Add PlayerPluginMessageRegisterEvent
2021-02-09 13:51:43 -05:00
Andrew Steinborn
7e42c5b2e7
Turn some APIs into no-ops if they apply to clients without the relevant client functionality.
2021-02-07 15:19:59 -05:00
Andrew Steinborn
b88c573eb1
Correctly forward the player's virtual host to the remote server.
2021-02-01 16:17:02 -05:00
Andrew Steinborn
4f80d2b261
Revert strict handshake hostname checks
...
These will break TCPShield and Cosmic Guard plugins. Sad as this was a worthwhile mitigation.
2021-01-29 23:08:14 -05:00
Andrew Steinborn
501853e807
Fix Checkstyle issue for the umpteenth time...
2021-01-29 17:59:00 -05:00
Andrew Steinborn
4f6d238b39
Strictly limit the hostname size and limit it to ASCII characters only
2021-01-29 17:56:50 -05:00
Andrew Steinborn
4219bf7b09
*Actually* fix Checkstyle issues
2021-01-26 20:02:07 -05:00
Andrew Steinborn
b982c5b6ed
Fix Checkstyle issues
2021-01-26 19:59:29 -05:00
Andrew Steinborn
0c90e94e85
fix
2021-01-26 19:50:43 -05:00
Andrew Steinborn
5ceac16a82
Add upfront size checks for some packets.
...
This is simply a further protection against certain attacks which send malformed packets to the proxy.
2021-01-26 12:33:35 -05:00
Andrew Steinborn
959e75d16d
Revert "Also provide a "proper" java.util.logger logger to plugins."
...
This reverts commit 8d71ea7135
.
Totally broken
2021-01-25 09:46:42 -05:00
Andrew Steinborn
8d71ea7135
Also provide a "proper" java.util.logger logger to plugins.
2021-01-25 01:54:50 -05:00
Andrew Steinborn
4bc76b3012
Add JUL support to log4j
...
Certain badly behaved plugins insist on logging with java.util.logging. Accommodate them.
2021-01-25 01:51:32 -05:00
Andrew Steinborn
68ae92f977
Merge pull request #419 from 0-x-2-2/dev/1.1.0
...
Use keepalive queue instead of just the last keepalive.
2021-01-23 20:18:14 -05:00
0x22
7aed76ee3d
Use keepalive queue instead of just the last keepalive.
2021-01-23 18:35:14 -05:00
Andrew Steinborn
03e9fa79d6
Raise limit on JoinGame NBT reading to 2MiB.
...
This is required for particularly large mod packs (think All of Fabric 3 for instance).
2021-01-23 12:55:28 -05:00
Andrew Steinborn
fcffccf0d8
Fix typo
2021-01-23 01:35:49 -05:00
Andrew Steinborn
ce7d1dcb26
A new year, a new color for Velocity!
2021-01-23 01:34:46 -05:00
Andrew Steinborn
892ac6f626
Accept changes to compression treshold on the fly.
...
Vanilla allows this for some reason, and there has been one case where Velocity's strict behavior has caused a bug. Fix this.
2021-01-21 17:58:09 -05:00
Andrew Steinborn
567a3b2365
Swallow and more usefully log exceptions in scheduler task running.
2021-01-09 16:39:38 -05:00
Andrew Steinborn
ba1c1eef64
More clarification
2021-01-06 13:30:57 -05:00
Andrew Steinborn
4df8f70156
Rename proxy-protocol setting to haproxy-protocol to make it clearer this is for HAProxy.
2021-01-06 13:29:30 -05:00
Andrew Steinborn
1f9c24566d
Fix off-by-one error in MinecraftCompressEncoder
2020-12-31 13:18:01 -05:00
Andrew Steinborn
dc7ab0f7f5
Log server backpressure
2020-12-27 18:36:54 -05:00
Andrew Steinborn
2a1e83902d
Add support for server-side backpressure
2020-12-27 18:05:27 -05:00
Andrew Steinborn
7329d165f6
2021
2020-12-26 21:56:19 -05:00
Andrew Steinborn
6a8ec21f26
Use a different quiet exception type to indicate the user should enable a debugging flag if needed
2020-12-26 20:59:17 -05:00
Andrew Steinborn
f6078e9b74
Fix several problems and clean up the BungeeCord plugin messaging support.
...
Fixes #402
2020-12-26 20:52:12 -05:00
Andrew Steinborn
b1f7980c5d
Fix ForwardToPlayer subchannel, closes #406
2020-12-26 19:49:28 -05:00
Andrew Steinborn
7fe2fc71e9
Add some small debug for refcount issues with plugin messages.
2020-12-25 17:03:38 -05:00
Andrew Steinborn
07b95d46ac
Delay sending stats to bStats for 3-5 minutes after server startup
2020-12-21 20:14:57 -05:00
Andrew Steinborn
eb3868d911
Do not try to override colors in messages or server-sent messages
2020-12-21 19:56:17 -05:00
Andrew Steinborn
98b74fd220
Correctly retain message buffer for LoginPluginMessage.
...
Fixes #407
2020-12-21 13:14:38 -05:00
Seppe Volkaerts
c85be1a88f
Improve continuation error handling.
2020-12-15 23:08:53 +01:00
Seppe Volkaerts
e1d21c0c27
Reduce some context switches if a continuation is resumed during the event task.
...
When a continuation was called during the execution of an event task, and not from an asynchronous thread, continue on the thread where the event task was executed instead of scheduling an async task to do it later. Can happen when resuming because no async work needed to be done, and for some reason returning a null EventTask isn't an option.
2020-12-15 22:59:11 +01:00
Seppe Volkaerts
2705eba553
Small cleanup.
2020-12-15 14:00:10 +01:00
Seppe Volkaerts
d0a61e8704
Update java version. Switch to caffeine cache to allow null values.
2020-12-15 13:05:32 +01:00
Seppe Volkaerts
b04d5de141
Implement async event tasks.
...
Events will now only be handled by an async executor if necessary. This should improve performance for lightweight listeners.
2020-12-15 12:48:32 +01:00