md_5
4fa9961c15
#1958 : Negative compression thresholds disable compression like Vanilla
2016-12-16 10:43:29 +11:00
Gabscap
ea6680281f
Allow cancelling LoginEvents with component reasons.
...
Ultimately this PR was selected as it better matched the existing code in terms of using lombok and not adding incomplete interfacing.
If for some reason a common interface is required, this can be implemented later.
Thanks to yawkat also for the PR in #1336 -- it was difficult for the merger to compromise between this and #1957
2016-12-01 10:12:54 +11:00
md_5
2171ca9f51
Fix confusing use of static subclass methods
2016-12-01 09:46:34 +11:00
md_5
4d004d5fed
Throw exception when ServerConnectEvent is handled badly
2016-11-25 10:42:30 +11:00
Mystiflow
f3e5f34aeb
Allow chat messages longer than 100 characters on > 1.11 clients
2016-11-15 09:37:20 +11:00
md_5
9ecdde2292
Add support for Minecraft 1.11
...
Improve QueryHandler session handling as suggested by IchBinJoe
2016-11-15 02:40:46 +11:00
md_5
987f2d0eb2
Remove unused connect_kick_outdated_forge message
2016-11-06 11:47:27 +11:00
Mystiflow
908b7f7374
Use server priority for downstream kicks too ( #1978 )
2016-11-06 11:25:46 +11:00
Mystiflow
18f57f24fa
Fix issue pointed out by Supereg; store dimension on first join too ( #1979 )
...
* Only double switch if the dimension is the same.
According to the protocol, a double respawn packet is only needed to be
sent if from the same dimension, so by storing the last known dimension,
we are able to compare and avoid the double packet.
This also maintains the same behaviour for Spigot
ad2f806097
* Store current dimension on first disconnect too
2016-10-30 08:28:11 +11:00
Mystiflow
812141f400
Only double switch if the dimension is the same. ( #1977 )
...
According to the protocol, a double respawn packet is only needed to be
sent if from the same dimension, so by storing the last known dimension,
we are able to compare and avoid the double packet.
This also maintains the same behaviour for Spigot
ad2f806097
2016-10-29 17:59:38 +11:00
md_5
75b7fdac58
Fix stray imports in proxy
2016-10-19 21:15:00 +11:00
md_5
5c551fd899
Improve Quality of Channel Close Code
...
* Don't double disconnect due to client exceptions
* Add generic delayed close method
* Properly format imports in changed files
2016-10-19 21:08:38 +11:00
md_5
0581e49d49
Update Netty
2016-08-30 20:22:02 +10:00
md_5
5c809c2499
#1945 : Relay MC|Brand messages
2016-08-26 16:11:38 +10:00
md_5
356ca08337
#1544 : Reduce verbosity of common/harmless exception during initial connection
2016-08-21 09:07:33 +10:00
md_5
b86a33d058
#1941 : Fix modded client+server in some cases
2016-08-21 09:02:37 +10:00
md_5
504d3c0529
#1939 : Fix server brand; prevent bungee-bungee connections.
2016-08-20 11:43:48 +10:00
md_5
e7be3c6b1e
Allow PluginMessages to be handled when no server connected
2016-08-11 23:02:29 +10:00
md_5
3a0b0aa116
#1930 : Don't handle upstream packets if no server connected
2016-08-03 17:03:06 +10:00
md_5
c43f25e23b
Fix MC|Brand array having trailing zeroes.
2016-07-15 23:45:38 +10:00
md_5
eca99576a0
Move net.md_5.bungee.log to its own module.
...
API subject to change and should not be used externally.
2016-07-11 11:12:35 +10:00
BlackHole
1250088f98
Correctly show outdated_client and outdated_server messages
...
If the client protocol version is not supported, show outdated_server message only if client version is higher than highest supported protocol version, outdated_client message else.
2016-06-29 09:15:17 +10:00
md_5
507a98f28f
#1859 : Rewrite second leash int
2016-06-29 09:14:03 +10:00
md_5
a8c529eca5
#1859 : Entity attach is an int
2016-06-28 15:28:28 +10:00
misterT2525
c5ac5a0d17
#1859 : Fix EntityMap for leads.
2016-06-27 14:20:02 +10:00
md_5
e4cf010bda
Update to Minecraft 1.10
2016-06-09 11:44:06 +10:00
md_5
2df29701ed
#1866 : Correct throttle
2016-05-15 16:01:58 +10:00
PunKeel
d9a8311b8e
Use expireAfterWrite to perform throttle
2016-05-15 14:54:18 +10:00
Zartec
d14b96d55e
Added separate exception for packet overflows to limit log output.
...
Attacking a server with a hacked client causes the log to print a huge amount of stacktraces. This will limit the log output to the error message.
2016-05-15 14:52:41 +10:00
md_5
41621193ec
#1862 : Support 1.7 pings
2016-05-15 14:52:01 +10:00
Thinkofname
a12ac37cc3
Support Minecraft 1.9.4 and tidy up packet handling
2016-05-10 21:51:39 +10:00
BuildTools
4c7c64c9b8
#1848 : Added missing call to UserConnection.connect callback for "already_connected" and "already_connecting"
2016-05-05 22:32:24 +10:00
md_5
80b3135a93
Fix formatting
2016-04-24 22:31:04 +10:00
md_5
1cd3e42182
#1841 : Fix disabled throttle and improve code.
2016-04-24 22:18:23 +10:00
Janmm14
2e8ed1cfba
Reimplement join throttle.
2016-04-24 11:56:24 +10:00
md_5
b9a98c88ba
Java 7 support
2016-04-24 11:39:23 +10:00
md_5
0b554be10a
Strip / add velocity to SpawnEntity packets that require it when rewritten
2016-04-24 09:39:22 +10:00
Jofkos
f070e2d064
Added ansi "erase line"
2016-04-08 07:42:11 +10:00
Thinkofname
b6b015fe1f
Ensure we get a 1024 bit RSA key ( Fixes #1814 )
2016-03-31 16:12:30 +01:00
Thinkofname
d1a1e87ab5
Support Minecraft 1.9.2
2016-03-30 16:57:54 +01:00
md_5
6b4e285186
1.9.1 support
2016-03-30 15:59:51 +01:00
md_5
f265f7c594
#901 : Better custom messages support
2016-03-24 14:15:16 +11:00
md_5
859d176c93
Update README.md and fix minor formatting error.
2016-03-09 18:16:22 +11:00
Tux
52d66897e4
Raise an error if a server in the priority list is undefined
2016-03-06 16:10:31 +11:00
md_5
8b327708ee
#1335 : Remove 16 char displayname limit
2016-03-05 18:56:32 +11:00
Zartec
903ada06f0
Sould break the priority lookup after server found
...
If the list would look like this
- test1 -> 1.8 -> ServerKickEvent cancelled -> reason set to "outdated"
- test2 -> 1.8
- test3 -> 1.9
and a player joins with version 1.8 he would never be connected to test2 because the server test2 is not equal to test1 and the server test3 is not equal to test1.
So test3 is the last in the while loop and would be used also if another server with higher priority matches the requirements.
2016-03-04 07:10:59 +11:00
Youri Kersten
a7664a5559
Remove any tracked bossbars when a client switches servers.
2016-03-03 18:57:48 +11:00
md_5
46e7f2dfc9
Only allow ServerUnique tab lists as per 1.8 due to incomplete functionality.
2016-03-02 20:20:55 +11:00
Youri Kersten
b6671cd00c
Send action bar messages using BaseComponent for 1.9 clients
...
Action Bar packets in 1.9 now correctly support the JSON format, however sending them the 1.8 way will kick the client. This keeps the compatibility with 1.8 clients with the version check whilst correctly sending the packet to 1.9 clients.
2016-03-01 19:32:19 +11:00
Thinkofdeath
7926230682
#1765 : Fix ServerInfo.ping to handle chat components.
2016-03-01 12:38:19 +11:00
md_5
dd66e3068a
Fix priority selection not playing nicely with reconnect handlers.
2016-03-01 12:34:50 +11:00
md_5
04a6eff14c
Don't handle exceptions for obsolete server connectors.
2016-03-01 11:53:59 +11:00
md_5
05de455a9c
Update to Minecraft 1.9
2016-03-01 09:31:12 +11:00
Thinkofdeath
12a7b7afc3
Add support for 15w33c and multiple fallback servers
2016-03-01 09:31:12 +11:00
Thinkofdeath
dfaa687f71
Remove 1.7.x Support
2016-03-01 09:31:12 +11:00
md_5
219819b738
Replace default/fallback servers with a server priority list.
2016-03-01 09:31:12 +11:00
md_5
0646a3090a
Fix scoreboards / tab lists getting out of sync due to race conditions / overlap.
2016-02-19 09:07:12 +11:00
md_5
afc02082e6
Make it clear when users connected Bungee to itself.
2016-02-17 10:34:04 +11:00
Tux
848cad2a59
Fix cancelling TabCompleteEvent.
...
The packet would get sent regardless if the event was cancelled, only if there were no suggestions available.
2016-02-07 17:44:07 +11:00
Thinkofdeath
a0f2c42d38
Clear the address cache entry when a connection fails
...
Should help solve the issues caused by mojang swapping the ip address of
the session server.
2016-02-05 10:19:31 +11:00
md_5
e556fd7150
Add Connection.isConnected()Z API.
...
Idea from kamcio96 in #1693
2016-02-05 10:09:47 +11:00
md_5
841c81cdc4
[ #1714 ] Make a copy of the main Minecraft buffer as EntityMap.rewriteVarInt may require more bytes than available.
2016-01-24 19:45:02 +11:00
md_5
052131c1fa
Reduce amount of memcpy within proxy pipeline.
2016-01-24 11:22:39 +11:00
kamcio96
83e27f07e6
Use static instances of EntityMap
2016-01-16 12:44:32 +11:00
md_5
5cff0b2171
Remove redundant synchronization on ServerConnection.disconnect
2016-01-16 12:33:42 +11:00
md_5
2c86592ecd
[ #1649 ] Don't parse disconnect reason for servers.
...
Reported by @kamcio96
2016-01-16 12:29:13 +11:00
md_5
f5552963b8
Update Netty and enable EPoll transport.
2016-01-16 11:37:17 +11:00
Tux
a1895c556f
Make BoundedArrayList follow the old behavior.
...
Unit tests have been included.
2016-01-11 14:09:07 +11:00
md_5
aa214c0b54
[ #1695 ] Use BoundedArrayList to cap list size for REGISTER channels.
2016-01-10 19:00:00 +11:00
Joseph Hirschfeld
19f2e7b13e
DNS IPs should only be cached for 1 minute.
2015-11-12 12:58:18 +11:00
xxyy
ba448b5670
Add configurable proxy command logging.
...
This commit adds a config switch that allows users to turn off
the logging of proxy commands. It is set to off by default to
prevent unwanted log spam and keep current behaviour.
Log proxy commands
This commit changes the PluginManager to print a message to
console and the log when a proxy command is executed.
This may assist with debugging and miscellaneous
investigations.
2015-10-26 20:59:53 +11:00
md_5
013320fd9e
#1852 : Fix packet compression when BungeeCord and the server are set to different compression levels.
2015-09-16 19:44:55 +10:00
Thinkofdeath
c626254825
Only enable compression for 1.8 clients
2015-09-13 08:59:42 +01:00
md_5
4e94c278da
[ #1567 ] Let BungeeCord dictate the network compression threshold.
2015-09-13 09:29:39 +10:00
jfr
06ad0f9310
Reorder PlayerJoinEvent / UpstreamBridge initialization.
...
Placing the PlayerJoinEvent in front of the Upstream Bridge handling prevents us from actually accessing the target server in PostJoinEvent handlers.
2015-09-07 18:26:41 +10:00
md_5
7ec1a1aa4e
Fix / clarify behaviour of matchPlayer.
2015-09-05 13:42:33 +10:00
kamcio96
81d1c46a0d
Support uuid in config.yml
2015-07-13 19:46:15 +10:00
Daniel Naylor
f3c14cf064
Fix telling newer 1.7 Forge clients that they are outdated. Fixes #1476
...
* Only check the version of FML if we are running Minecraft 1.7.10 - 1.8 clients are always valid.
* If the version of FML that is reported is 7.10.99.99 - report the Forge version instead.
2015-07-10 12:33:22 +10:00
md_5
cc3a8c067e
Check channel active before adding handlers. #1489
2015-06-06 18:41:54 +10:00
Nathan Poirier
8622cf3af4
Fix BadPacketException handling It is catched by DecoderException and was not processed correctly by HandlerBoss So the console was spammed when that exception is thrown
2015-05-18 20:18:19 +10:00
Thinkofdeath
93959cab4b
Only force remove the player from 1.8 client's tab list
2015-05-10 22:51:14 +01:00
Thinkofdeath
585ab4f453
Readd the delay removed in f9773a69c3
2015-05-08 20:41:21 +01:00
Thinkofdeath
76052b92d3
Don't send a Kick during the STATUS protocol as it doesn't support it
2015-05-08 20:32:12 +01:00
Thinkofdeath
f9773a69c3
Don't send a kick to the server on disconnect
...
This was dropped from the protocol in 1.6 and was left in bungee by
mistake
2015-05-08 19:39:22 +01:00
md_5
d1e1ce4cdb
Add option to disable native code.
2015-05-03 10:35:48 +10:00
md_5
fa828eba31
Allow using properties to change leak detection level.
2015-04-13 09:51:31 +10:00
Thinkofdeath
a48c458306
Don't send bungeecord plugin messages to the client
2015-04-08 18:22:16 +01:00
Thinkofdeath
f2d17cb216
Follow vanilla and kick the joining user on connect if the name is already taken ( Fixes #1383 )
2015-02-28 13:07:13 +00:00
md_5
f2673c5876
Kick only in online mode: #1382
2015-02-28 13:00:04 +11:00
Thinkofdeath
e1951c5d66
Fix spectator mode with ip-forwarding enabled
2015-02-25 22:31:05 +00:00
Thinkofdeath
988490ba87
1.8 isn't a snapshot anymore
2015-02-25 22:27:50 +00:00
md_5
61cee2d27c
Fix formatting in a bunch of files.
2015-02-14 18:36:58 +11:00
md_5
2055c98ebe
Add reason for stopping and extra arguments.
2015-02-14 18:33:49 +11:00
Joshua Rodriguez
415d5860e4
Allow setting a connections uuid when in offline mode
2015-02-14 18:33:28 +11:00
md_5
3776feb559
Don't allow duplicate UUIDs on the proxy.
2015-02-14 18:26:27 +11:00
md_5
7c1f232e85
Update depend versions, limit use of most Java 1.7 APIs.
2015-02-08 13:07:41 +11:00
md_5
0d569ac0d1
Refactor native code and implement our own JNI wrapper around zlib.
...
The previous native cipher code has been refactored so that it may be loaded and used slightly more generically, allowing more native components to be easily added as time goes on.
I have also written a new native code compression module, which wraps around zlib in the same manner that Inflater / Deflater does, however it operates directly on the memory addresses of it's input / output buffers which means that we can save one, or maybe even two copies. To support this, the VarInt decoder has been adjusted to always use a native buffer.
2015-02-07 14:06:41 +11:00
md_5
61d2765715
Only check name for server reload modification.
2015-01-24 13:34:38 +11:00
md_5
cf722de1d2
#1130 : Add scheduler unit tests and make more robust.
2015-01-18 12:09:38 +11:00
Daniel Naylor
28496e0471
Add API for getting whether the user is a Forge user.
...
For Minecraft+Forge 1.8 we can detect whether the user is a Forge user before we get the mod list, due to the changes to the initial (not FML|HS) handshake that are now made (which is for vanilla client support). Bungee can exploit this to detect FML clients from the off, but it still does not tell us what the mod list is. Thus, creating this API method for users who simply need to know whether the user is connected via FML is no longer a duplication of the getModList api method.
2015-01-12 19:23:07 +11:00