GlowstoneMC / Glowstone-Legacy

An open-source server for the Bukkit Minecraft modding interface
Other
363 stars 122 forks source link

Support LilyPad proxy information (adds #569) #570

Closed turt2live closed 8 years ago

turt2live commented 9 years ago

Please refer to #569 for a technical description of the data format and why this is important.


This PR adds support for the proxy data sent by LilyPad. This is done by attempting to parse the JSON data first. If parsing failed, then the data is likely Bungee or other (unsupported) data. If parsing passed on the other hand, then we rip it apart for our purposes.

The Bungee parsing has only been changed to ensure that the two unsupported values are set to null. All other processing remains unchanged.

This PR also adds support for the security key LilyPad sends for it's internal use. This is not used by Glowstone at all but is included to make the lives of the LilyPad maintainers easier. By having this field exposed (to a degree) helps ensure that they don't have to keep up to date with our networking logic and rewrite the GlowProtocol used for handshakes. It will still require effort on their part to get access to this field, but at least it is much easier than having to override our networking.

It should also be noted that this PR technically allows the use of multiple proxies (ie: Bungee and LilyPad). Whether or not the independent assemblies permit that is another story, but the handling of the additional proxy data permits the use of both proxies.

turt2live commented 9 years ago

@SpaceManiac This pull request is pending further review by yourself. Please take the time, if possible, to do so. Thanks!

turt2live commented 8 years ago

Closing this PR - Project has moved on to a new repo.

If this needs implementing in the newer repository I'll try and find time to implement it.