WorldEditAxe / eaglerproxy

A standalone implemention of the BungeeCord plugin for EaglercraftX, now with online vanilla server support!
38 stars 93 forks source link

"Accept:" query handling logic isn't up to spec #35

Open lax1dude opened 3 weeks ago

lax1dude commented 3 weeks ago

Currently the proxy handles MOTD requests by checking if the first packet's exact contents equals "Accept: MOTD". This initial check should not be case sensitive, "accept: motd", "Accept: motd", and "ACCEPT: MOTD" are all valid on the official EaglercraftX server implementation. There is also a second standard MOTD query type in Eaglercraft's protocol that is requested with "Accept: MOTD.cache" which is meant to be used (and currently is) by server lists to request the server's MOTD to cache and display on the server list website. This cache query type also returns the set of cache hints configured in listeners.yml in the request_motd_cache section.

While neither of these issues is that important for actually using EaglerProxy to connect to servers, I thought I would just let you know anyway since the protocol is not documented anywhere otherwise.

See "MOTDQueryHandler.java" in the official bungee and velocity plugins for more details.