Commit Graph

1067 Commits

Author SHA1 Message Date
Andrew Steinborn 221ee510ff Minor cleanup. 2019-01-01 04:34:31 -05:00
Andrew Steinborn 0906a436e3 Fix bug with tab-completing names on 1.12 and lower. 2019-01-01 04:34:13 -05:00
Andrew Steinborn 696b6549e5 Stronger TLS settings.
Velocity will now validate the hostname and use TLSv1.2 only.
2018-12-30 11:13:58 -05:00
Andrew Steinborn 8588e7f1fe Optimize native handling further.
We now try to work within the boundaries given by the native. In the
case of Java natives, we work with byte arrays. With natives, always use
direct buffers.

However, the numbers do favor the natives, since they work with direct
byte buffers, without any copying. For the most part, this commit is
intended to improve the lives of Velocity users on Windows.
2018-12-30 06:16:04 -05:00
Andrew Steinborn 095a478440 Always ensure we don't pass a heap ByteBuf to the natives. 2018-12-30 04:53:47 -05:00
Andrew Steinborn 977d29ffa0 Fix Checkstyle errors 2018-12-30 03:58:50 -05:00
Andrew Steinborn 5bf936d1b9 Add unit tests 2018-12-30 03:57:05 -05:00
Andrew Steinborn 9ce4294e6e Fix forced hosts with SRV records. 2018-12-30 03:52:50 -05:00
Andrew Steinborn abc5ef7f5e Full Checkstyle compliance at last. 2018-12-30 03:28:45 -05:00
Andrew Steinborn 20c3966f6f Make PluginDependencyUtils test more consistent. 2018-12-30 03:05:26 -05:00
Andrew Steinborn 89bcc9a100 Grab most of the low-hanging fruit. 2018-12-29 17:22:36 -05:00
Andrew Steinborn f898b766f1 Fix resource pack sending on <= Minecraft 1.9.4 2018-12-29 16:41:58 -05:00
Andrew Steinborn 0ca0c2a297 Resource pack API 2018-12-29 15:21:47 -05:00
Andrew Steinborn 68fde1e795 Adapt System.(out|err) to log4j. 2018-12-29 13:30:50 -05:00
Andrew Steinborn 1113266823 Merge branch '1.13-tab-complete' 2018-12-29 12:27:26 -05:00
Andrew Steinborn 0cc8a2a14f Tab-completing arguments works now. 2018-12-29 12:24:10 -05:00
Andrew Steinborn 10c440af83 Consistently display disconnects. 2018-12-29 11:46:54 -05:00
Andrew Steinborn 5f3c31bc48 Fix Checkstyle issues. 2018-12-29 11:07:45 -05:00
Andrew Steinborn 76fc39660c Merge branch 'master' into 1.13-tab-complete 2018-12-29 11:01:41 -05:00
Andrew Steinborn 256978fc15 Solve a bunch of Checkstyle warnings. 2018-12-29 10:57:55 -05:00
Andrew Steinborn 21b20d5dc3 Obfuscate exceptions from user connection. 2018-12-29 10:13:38 -05:00
Andrew Steinborn 09fe7cee1e Include more of fastutil to allow us to use Object2IntLinkedOpenHashMap 2018-12-29 09:48:09 -05:00
Andrew Steinborn 2cedb457ce [WIP] Inject commands for Minecraft 1.13+ 2018-12-29 09:28:24 -05:00
Andrew Steinborn b6944bbec2 Use EnumSet in StateRegistry.PacketRegistry. 2018-12-28 13:08:22 -05:00
Andrew Steinborn 9bbe25fc90 Improve efficiency of Java implementation of natives. 2018-12-28 13:02:46 -05:00
Andrew Steinborn 566a306d18 Clarity improvements. 2018-12-28 13:02:46 -05:00
Andrew Steinborn 3f7da5e416 Don't need to shade in checker-qual 2018-12-25 09:32:11 -05:00
Andrew Steinborn e34d68e81a Resolve some warnings. 2018-12-25 01:47:36 -05:00
Andrew Steinborn 1c2235af5a Explicitly find and complain about BungeeCord and Bukkit plugins.
They aren't supported with Velocity and will never be.
2018-12-24 09:44:26 -05:00
Andrew Steinborn 4a872ffabe Add asynchronous DNS resolution. 2018-12-24 07:37:59 -05:00
Andrew Steinborn e71bac2028 Fix ProtocolUtil#readString() to respect Unicode.
This brings Velocity's to conformance to what Mojang does in
PacketDataSerializer.
2018-12-24 05:25:58 -05:00
Andrew Steinborn 267d306569 Remove all uses of (mark|reset)ReaderIndex()
This is removed in Netty 5.x: netty/netty#8636
2018-12-23 23:30:26 -05:00
Andrew Steinborn 11daaa986a Add readable checks. 2018-12-23 18:50:02 -05:00
Andrew Steinborn 3a87e47796 Remove validation check since these usernames exist anyway. 2018-12-17 15:35:14 -05:00
Andrew Steinborn 5be64565e9 Print exception in task 2018-12-16 13:41:23 -05:00
Andrew Steinborn ca915a44a9 Bump write mark, to see if it improves #152 2018-12-15 21:13:52 -05:00
Andrew Steinborn 4b5664ec91 Remove redundant check. 2018-12-14 15:09:52 -05:00
Andrew Steinborn 2884c2ea90 Strictly validate usernames for online mode. 2018-12-14 15:04:21 -05:00
Andrew Steinborn 10293aa542 Fix login with IPv6 and other potential security issues 2018-12-14 14:41:46 -05:00
Andrew Steinborn 9a15a80627 Merge pull request #161 from VelocityPowered/anonymize-user-disconnect-messages
Anonymize all exception/connection-related errors from the user.
2018-12-14 13:11:51 -05:00
Andrew Steinborn cc5a7dba9b Clean up PluginDependencyUtilsTest 2018-12-14 01:47:43 -05:00
Andrew Steinborn 2d54a2c15b Record circular dependencies 2018-12-13 19:44:25 -05:00
Andrew Steinborn da12008736 Fix more formatting issues. 2018-12-13 04:53:45 -05:00
Andrew Steinborn 0100cdd244 More comment on the plugin dependency stuff. 2018-12-13 04:50:08 -05:00
Andrew Steinborn fc76a027de Rewrite dependency plugin resolving.
Velocity now resolves plugin dependencies using a depth-first search
(DFS), instead of using Kahn's algorithm like before. This properly handles duplicate indirect dependencies.

Thanks to @creeper123123321 for noticing this issue!
2018-12-13 04:06:43 -05:00
Andrew Steinborn f9843057ba Anonymize all exception/connection-related errors from the user.
We still print these out in the logs.
2018-12-11 01:50:29 -05:00
Andrew Steinborn ce6b061b79 Make Velocity's server list ping behavior more conformant.
This fixes pinging with 1.7.x and with certain ping libraries that send
the -1 protocol version.
2018-12-07 17:24:41 -05:00
Luck 6ff9180987 Remove redundant extra lambda in EventManager#fire implementation 2018-12-04 00:03:47 +00:00
Luck 3d3d6adf04 Remove redundant null check in VelocityMethodScanner 2018-12-03 23:55:39 +00:00
Luck cfae542dd2 Slightly optimize SimpleEventBus usage in VelocityEventManager 2018-12-03 23:53:50 +00:00