Commit Graph

1289 Commits

Author SHA1 Message Date
tsuoihito
c8e876bfe2
#3342: Fix sanitized address being not IP but hostname after InetSocketAddress#getHostName() 2022-06-30 21:28:37 +10:00
md_5
ff5727c5ef
Revert broken chat PR and align with Spigot 2022-06-08 19:37:15 +10:00
Brokkonaut
e46bc343e4
#3319: Do not forward cancelled messages or handled commands 2022-06-08 17:44:08 +10:00
Lukas Alt
5972fd2353
#3318: Fixed system messages shown in action bar for MC 1.19 clients 2022-06-08 11:23:41 +10:00
md_5
a737a754d1
Downgrade dependency version 2022-06-08 09:01:05 +10:00
md_5
cc4765b4fe
#3313: Fix offline mode support 2022-06-08 08:22:46 +10:00
md_5
eccdf87f22
Minecraft 1.19 support 2022-06-08 02:00:00 +10:00
md_5
862bb2ac72
#3258: Only show detailed connect exception to admins 2022-04-09 08:59:01 +10:00
Outfluencer
34d416a4e8
#3261: Remove unused AttributeKeys
These attribute keys are not used so we can remove them
2022-03-19 10:05:23 +11:00
Outfluencer
978e68fc74
#3265: Print all thrown exception
DecoderExceptions that are not a CorruptedFrameException and dont have BadPacketException or OverflowPacketException as cause are not printed.
I also removed the ID message in BadPacketException because bad packet does not mean it has a invalid id the protocol version can also be not valid or the packet was not read to the end and more details are in the message of the exception
2022-03-19 10:04:40 +11:00
md_5
7e47490e70
Minecraft 1.18.2 support 2022-03-01 02:00:00 +11:00
nnnnt21
f4f94d3b56
#3256: Allow - and . in online mode as some accounts still have these usernames 2022-02-24 08:06:10 +11:00
md_5
eae9d45c8a
Provide more information in connect errors 2022-02-06 08:44:55 +11:00
md_5
d2d157c1fe
#3246: Fix commands not working due to MinecraftForge changes 2022-02-06 08:26:09 +11:00
Outfluencer
9c95d4ba43
#3226: Add console command name tab completion 2022-01-02 10:13:48 +11:00
md_5
51eb1ac623
Dependency upgrades 2021-12-18 12:18:21 +11:00
md_5
f2aadd6014
#3223: Only rewrite spectate packet if no IP forwarding 2021-12-13 08:25:54 +11:00
Valtn
42d8300bb7
#3220: Fix server list info being cached permanently 2021-12-05 08:04:26 +11:00
md_5
21b23624ad
#3159: Account for the (broken) configuration when ip forward is enabled on bungee but not the server 2021-11-23 15:27:31 +11:00
md_5
8b363d3d1f
Minecraft 1.18-pre5 support 2021-11-22 09:00:00 +11:00
PSNRigner
c7b0c3cd48
#3207: Rework the plugin message relaying system to allow unregistering channels 2021-11-12 19:38:47 +11:00
Frank van der Heijden
c3fffbc919
#3205: Don't forward tab completions if the root command is a bungee command 2021-11-04 18:45:11 +11:00
Janmm14
d8e293842f
#2466: Use switch in "BungeeCord" plugin message handling 2021-10-09 09:25:29 +11:00
MrMicky
5cf869df1a
#3198: Remove terminally deprecated SecurityManager
See https://openjdk.java.net/jeps/411
2021-10-09 09:25:29 +11:00
md_5
f26f7d8809
Add optional 1.18 (21w40a) snapshot protocol support
Accessible via the net.md_5.bungee.protocol.snapshot JVM property.
2021-10-09 09:25:28 +11:00
Outfluencer
c5a90475af
#3195: Remove unused translations
Both translations are not used in BungeeCord or any modules.
2021-09-25 08:10:28 +10:00
Outfluencer
3008d7ef2f
#3189: Improve username validation 2021-09-25 08:09:47 +10:00
Outfluencer
1823f86dbb
#3190: Improve login protocol state machine
Prevents repetition of packets
2021-09-17 18:16:01 +10:00
Janmm14
06bf088d27
#3186: Replace String.format calls in exceptions with simple string concats 2021-09-17 18:14:21 +10:00
Outfluencer
a283aaf724
#3153: Add color support to the end command 2021-07-18 10:22:17 +10:00
Adrian Antkowiak
5db276eb52
#3147: HAProxyMessage.sourceAddress() can be null
.sourceAddress() is null when send-proxy-v2 & check option is used
2021-07-11 09:06:51 +10:00
md_5
c866619f56
Minecraft 1.17.1 support 2021-07-07 00:00:00 +10:00
Outfluencer
b9da505efe
#3142: Remove redundant name length check in InitialHandler
This check is not needed anymore as the player gets kicked while reading the LoginRequest packet if the name length is longer than 16
2021-07-04 09:40:47 +10:00
md_5
061a7c67bd
Update checkstyle 2021-07-03 11:17:12 +10:00
Ivan Pekov
6f7331e852
#3138, 3140: Check for the new leak detector netty flag 2021-06-30 19:00:22 +10:00
Outfluencer
15b39887c5
#3133: Directly disconnect on illegal chars 2021-06-26 10:09:17 +10:00
Janmm14
f9583a7652
#3129: Replace ConnectTimeoutException with a more user-friendly string. 2021-06-26 10:06:12 +10:00
Janmm14
cb738188de
#3126: Use suppliers instead of reflection for native impl generation. 2021-06-26 10:01:30 +10:00
Outfluencer
ad50fc9ad3
#3111: Check chat for illegal chars & moved length check into the packet class 2021-06-15 09:07:20 +10:00
md_5
a25c2b325b
Fix typo in previous commit 2021-06-13 11:26:18 +10:00
md_5
c57bf61114
#3113: Remove unnecessary slice in PacketDecompressor
Thanks @lokha for the profiling and suggestion.
2021-06-13 08:32:25 +10:00
Antoine L
633ff1cfc8
#3107: Fix action bar messages in 1.17 2021-06-09 18:58:20 +10:00
md_5
90573625f1
Minecraft 1.17 support 2021-06-09 09:00:00 +10:00
Janmm14
d49e97c423
#3099: Improve toArray calls by using an empty array as parameter.
From Intellij IDEA inspections: Since late updates of OpenJDK 6 this call was intrinsified, making the performance of the empty array version the same and sometimes even better, compared to the pre-sized version.
2021-05-28 08:23:43 +10:00
md_5
39a80e414e
#3093: Support names with '.', block names with ' ' 2021-05-26 10:31:37 +10:00
md_5
7ec1f487c1
Remove ipv6 scope from forwarded addresses
Affects forwarding when epoll enabled
2021-05-25 18:42:10 +10:00
Janmm14
a0b7f09252
#3087: Force-enable multi-release jar file support for JDK9+ via System property 2021-05-18 20:34:53 +10:00
md_5
b60a30c705
Move additional dependencies to runtime scope 2021-05-16 18:09:04 +10:00
md_5
4fc1a9e770
Dependency bump 2021-05-15 17:22:35 +10:00
md_5
f0908b663f
Add optional 1.17 (21w19a) snapshot protocol support
Accessible via the net.md_5.bungee.protocol.snapshot JVM property.
2021-05-15 09:31:07 +10:00
md_5
5fa596fee9
#3084: (Regrettably) add a full SLF4J wrapper 2021-05-14 08:51:09 +10:00
md_5
ada1b95ffc
Remove redundant entity rewriting code on > 1.16.2 2021-05-12 07:59:50 +10:00
Janmm14
71d1246374
#3066: Put ReadTimeoutHandler after frame decoder.
This reduces the impact of attacks that send a large packet size first and then send data very slowly but frequently enough to not trigger a timeout (as the timeout handler was before the Varint21FrameDecoder). This causes connections to stay open for a long time without much effort from an attacker, while the packet never leaves the Varint21FrameDecpder stage of the netty pipeline (causing no additional checks to happen and no logs of the connection to be created).

This will not have an impact on bad connections as without recieving full packets the underlying spigot server would timeout instead.
2021-04-28 16:52:00 +10:00
_tomcraft
ac371bb596
#3073: Release HAProxyMessage after read 2021-04-28 08:07:17 +10:00
md_5
6a039de8db
Add preview of automatic library support
Example plugin.yml usage:
```
    libraries:
      - com.squareup.okhttp3:okhttp:4.9.0
```

Libraries will only be accessible to plugins and their transitive depends, allowing for multiple versions of the same library to be used by different plugins.

This is a preview feature. Feedback is welcome so that it may be refined before being made widely available.
2021-04-09 13:13:55 +10:00
Zach Levis
a7c6edeb63
#3041: Respond to login query requests in a way that matches the Vanilla client 2021-02-26 11:28:05 +11:00
md_5
e95da11115
Bump Netty/SnakeYAML/MySQL versions 2021-01-24 08:56:07 +11:00
md_5
9f6a798ea6
Bump version to 1.16-R0.5-SNAPSHOT 2021-01-15 10:19:24 +11:00
md_5
36c8df4d2f
Release 1.16-R0.4 2021-01-15 09:49:36 +11:00
md_5
281aecef4c
Minecraft 1.16.4 support 2020-11-03 07:00:00 +11:00
Gerrygames
8fffa206e4
#2978: Allow sending messages from specific UUIDs 2020-10-17 17:46:01 +11:00
Marc Baloup
c987ee199d
#2955: Single quotes in messages.properties should be doubled. 2020-09-16 19:53:05 +10:00
md_5
15204131c9
#2942: Players invisible in 1.16 where bungee is online mode but IP forwarding not enabled 2020-09-14 19:56:41 +10:00
Sneakometer
5ab5a846aa
#2953: Fix player limit off by one
Make so the player limit is actually the limit and not limit+1
2020-09-08 12:24:04 +10:00
Jan Boerman
023f407b0d
#2928: Add IPOther special plugin message 2020-08-22 17:49:16 +10:00
md_5
aa22fe68e5
Minecraft 1.16.2 support 2020-08-12 07:14:42 +10:00
md_5
a0f9333a13
Bump version to 1.16-R0.4-SNAPSHOT 2020-07-18 17:36:11 +10:00
md_5
287e28a722
Release 1.16-R0.3 2020-07-18 17:31:21 +10:00
md_5
94c4fcbad7
Bump version to 1.16-R0.3-SNAPSHOT 2020-07-13 08:45:48 +10:00
md_5
a99f62f693
Release 1.16-R0.2 2020-07-13 08:23:55 +10:00
cvrunmin
c5610a6a13
#2897: Add params of recursive call of ChatComponent transform
This modification allows deeper levels of HoverEvent (i.e. inside extra) to be transformed into legacy version
2020-07-09 08:48:11 +10:00
Mystiflow
bcc3460dda
#2893: Refactored Hover Code for Maintainability 2020-07-07 09:09:32 +10:00
Mystiflow
2e4b08e5ab
#2878: Null check hover event before transform 2020-07-02 07:29:10 +10:00
Mariell Hoversholm
a64c34d29e
#2875: Add the MessageRaw channel 2020-07-01 10:59:32 +10:00
Mystiflow
1d40b8a88a
#2866: Add support for contents in Hover Event 2020-07-01 10:57:09 +10:00
md_5
26f538d193
Clear tab list on server change 2020-06-27 09:05:55 +10:00
md_5
afcfac31a9
#2873: BossBar stays after switching servers 2020-06-27 08:44:53 +10:00
md_5
3409fe6dd3
Clear scoreboards and bossbars on new style server switch 2020-06-25 15:25:15 +10:00
md_5
4786c0986b
Bump version to 1.16-R0.2-SNAPSHOT 2020-06-25 08:36:25 +10:00
md_5
a7180850e0
Release 1.16-R0.1 2020-06-25 08:36:03 +10:00
FivePB (Xer)
e1084bd913
#2861: Improve dimension changing support in 1.16.x 2020-06-25 08:08:54 +10:00
Polo1K
c5f839c9ad
#2862: Minecraft 1.16.1 support 2020-06-25 08:08:51 +10:00
md_5
b41e9be4c9
Constrain dimension to String|Integer
Fixes 1.8 server switch issues
2020-06-24 12:56:31 +10:00
md_5
d0fd673b60
Minecraft 1.16 support + RGB ChatColor preview 2020-06-24 07:00:00 +10:00
MrIvanPlays
2f54c94372 #2786: Should first peek keepalive queue 2020-05-26 19:46:17 +10:00
md_5
67c2dfd884 #2794: connection throttle race condition 2020-05-10 09:44:44 +10:00
md_5
eeb3c6d3bf #2811: Shorten "Cannot request protocol" exception 2020-05-10 09:35:19 +10:00
md_5
3373eb864d #2834: Add support for long array NBT tag 2020-05-09 15:41:38 +10:00
_tomcraft
855d152503
#2829: Fix action bar messages on pre 1.11 versions 2020-04-30 08:11:00 +10:00
Mystiflow
f1c32f84f4 #2379: Add ServerSwitchEvent getFrom API 2020-03-25 18:20:37 +11:00
Byron Marohn
697f0875e6 #2770: Handle posix signals SIGTERM, SIGINT, SIGHUP gracefully
- Move working contents of Bungeecord.stop() to a separate function
named independentThreadStop() intended to be called from a separate thread.
- Added a new generic shutdown hook to call independentThreadStop when
the JVM begins shutting down.
2020-03-08 19:32:25 +11:00
md_5
6ad26cc8fa #2777: Write BungeeCord's config.yml in UTF-8 as with main config API 2020-02-24 10:28:40 +11:00
md_5
c2cc33c6d7 #2774: doImmediateRespawn not updated when switching servers 2020-02-21 09:40:13 +11:00
MrIvanPlays
4363315ec5 #2722, #2713: Remove unnecessary close delaying in server / user connections 2020-02-20 12:24:01 +11:00
md_5
f41b1fc821 Do not allow plugins to make multiple instances of their main class.
Prevents foot shooting, eg #2772
2020-02-20 12:24:01 +11:00
md_5
a52ea50006 #2769: Guardian target beam lost on server change 2020-02-10 10:28:47 +11:00
md_5
17d5dd3f94 Add dist Maven profile to generate source and Javadoc jars 2020-02-04 14:59:52 +11:00
Mystiflow
cdacc0b1be #2498: Add ServerConnectRequest accessor in ServerConnectEvent.
- Make the timeout and retry status mutable so plugins can modify these values directly within the ServerConnectEvent.
2020-02-03 10:36:33 +11:00
markusmarkusz
b4b998b2e5 #2761: Add ClientConnectEvent 2020-02-02 10:48:22 +11:00
md_5
7bd8a0276c Always print remote IP in InitialHandler 2020-01-30 09:01:10 +11:00
md_5
1dee049007 Don't send/construct redundant kick messages 2020-01-29 11:05:38 +11:00
md_5
e9ba95b9dc Don't log full CorruptedFrameException 2020-01-29 10:48:09 +11:00
md_5
d3bd785289 #2762: Work correctly with disabled timeout 2020-01-28 20:37:04 +11:00
md_5
3ce4132c58 Switch keepalive queue to ArrayDeque
See eeb374798b
2020-01-28 20:37:04 +11:00
Mystiflow
cd7a3ab2b2 #2758: Improve server list ping response where remote ping failed 2020-01-25 11:16:02 +11:00
Mystiflow
0a4b9b4984 #2752: Configurable connect and ping timeouts 2020-01-25 11:12:40 +11:00
md_5
70370faf5d Add checkstyle indentation checks 2020-01-24 14:07:42 +11:00
md_5
24a53a671c Show socketAddress in BungeeServerInfo.toString 2020-01-24 14:07:14 +11:00
md_5
503b4827d9 Fix bad formatting in EntityMap 2020-01-24 13:18:09 +11:00
polo1k
eeb374798b #2710: Store queue of pending keepalives
This allows the server to send them at a rate greater than the client reply time.
2020-01-24 13:13:01 +11:00
Mystiflow
636c020772 #2753: Add configurable remote ping caching 2020-01-24 10:48:50 +11:00
md_5
129884f44d Minecraft 1.15.2 support 2020-01-22 08:00:00 +11:00
md_5
b70cb01413 Add beta support for binding bungee to unix socket addresses 2020-01-16 10:36:13 +11:00
md_5
85ea4c165b Remove redundant scheduled close, already channel closed by future. 2020-01-14 19:06:14 +11:00
md_5
d20e622b7b Apply checkstyle to javadoc 2020-01-05 11:25:56 +11:00
md_5
2f547f73f7 Fix some javadoc warnings 2020-01-05 11:17:11 +11:00
Janmm14
5f29e939b0 #2720: Send different log message for pings (vs login) 2020-01-05 11:02:05 +11:00
Mystiflow
d2ceccd646 #2725: Various improvements to chat API
* More versatile ComponentBuilder system
    - Allow creating a builder without an initial component
    - Duplicate the parts when component is created
    - Add getter for 'parts'
* Added cursor API for more fluid component modifying
* Don't legacy convert Titles on 1.11 or newer
* Simplify plain and legacy text converting code
    - Shares the addFormat method between all superclasses
    - Duplicate code in TranslatableComponent moved in separate method
2020-01-05 10:40:07 +11:00
md_5
065893b523 Update Netty to 4.1.44.Final and remove usage of some deprecated methods 2019-12-21 11:52:45 +11:00
md_5
4204fa2966 Fix fishing hooks / spectral arrows after switching servers on 1.15.x 2019-12-18 12:39:49 +11:00
md_5
1f24591a0d Minecraft 1.15.1 support 2019-12-18 08:00:00 +11:00
md_5
4cccf53775 Minecraft 1.15 support 2019-12-11 08:00:00 +11:00
md_5
70038c9144 Revert "#2714: Remove unnecessary throws in ServerConnector"
This reverts commit 74a6aa32a2.

Completely breaks Bungee
2019-12-05 12:28:21 +11:00
Janmm14
39ef20b298 #2716: Don't attempt to send kick packet during handshake phase 2019-12-05 12:05:35 +11:00
Janmm14
74a6aa32a2 #2714: Remove unnecessary throws in ServerConnector
As ServerConnector's handle(PacketWrapper) method only checks whether packet.packet is null, its not necessary to cancel its execution by throwing CancelSendSignal.
2019-12-05 10:24:20 +11:00
md_5
c7984070a2 Misc dependency update 2019-12-01 17:32:32 +11:00
MrIvanPlays
9e76966e0f #2608,#2684: Add some missing translations to module commands 2019-08-21 20:09:09 +10:00
md_5
450c33db64 Formatting fixes 2019-08-21 20:04:16 +10:00
md_5
34febec65f Increase outdated build delay to 8 weeks 2019-08-10 10:51:26 +10:00
md_5
5c6bc183fd Minecraft 1.14.4 support 2019-07-20 09:00:00 +10:00
md_5
fe2a39e4f1 Minecraft 1.14.3-pre4 support 2019-06-21 20:00:00 +10:00
md_5
8fda060611 Minecraft 1.14.2 support 2019-05-28 06:30:00 +10:00
md_5
3ec223ec94 Minecraft 1.14.1 support 2019-05-14 10:00:00 +10:00
md_5
086eb847ec #2631: Fix incorrect types of fishing bobber and spectral arrow 2019-05-01 18:00:08 +10:00
md_5
7d68335c1d Fix switching to servers with larger view distance 2019-04-28 10:52:49 +10:00
killme
9bce83704a #2622: Let ThrottleTest work independently of real time 2019-04-25 20:57:03 +10:00
Zedadias Wick
4ca942b169 #2626: Correct entity metadata type values for 1.14-pre5.
Spawn Object packet now uses Entity IDs, not Object IDs, and is sent as a VarInt rather than Byte.
2019-04-24 09:33:17 +10:00
md_5
af10f82d14 Apply and enforce import ordering rules 2019-04-23 15:23:40 +10:00
md_5
3f01748d75 Minecraft 1.14-pre5 support 2019-04-23 12:00:00 +10:00
md_5
52a125dded Add --help flag 2019-03-17 12:43:12 +11:00
md_5
6d6fbb5efa Fix two minor formatting issues 2019-02-17 10:13:24 +11:00
md_5
0d6f3ee374 Make 1.13 command injection normal functionality 2019-02-17 10:10:41 +11:00
md_5
28c82238d0 Fix typo in previous commit 2019-02-03 17:58:46 +11:00
md_5
1a06ebeee0 #2599: Remove connection throttle if proxy protocol in use 2019-02-03 08:26:03 +11:00
md_5
29c093f83f #2586: TabCompleteResponseEvent for 1.13 2019-01-30 11:33:04 +11:00
md_5
9a2acc826e #2569: Respect disabled_commands setting for 1.13 tab completion 2019-01-03 16:39:38 +11:00
md_5
4fa1d82b81 #2572: Add additional APIs regarding server restriction 2019-01-03 16:35:32 +11:00
md_5
5ef5dd2c09 #2570: Implement more aggressive connection throttling.
Once an IP has connected connection_throttle_limit times within connection_throttle milliseconds, it must wait connection_throttle milliseconds before attempting to connect again.
2018-12-27 10:25:29 +11:00
md_5
a9a4c900e4 #2524: Allow empty groups/permissions 2018-12-21 10:35:57 +11:00
md_5
d689ba5904 #2535: Reduce verbosity of unhandled packet exception messages 2018-12-21 10:15:36 +11:00