mirror of
https://github.com/Minestom/Minestom.git
synced 2025-02-05 23:11:36 +01:00
Use the server brand name as the motd in case of a legacy ping
This commit is contained in:
parent
a8796382b7
commit
424e99e2d8
@ -15,6 +15,7 @@ import net.minestom.server.network.netty.codec.LegacyPingHandler;
|
||||
import net.minestom.server.network.netty.codec.PacketDecoder;
|
||||
import net.minestom.server.network.netty.codec.PacketEncoder;
|
||||
import net.minestom.server.network.netty.codec.PacketFramer;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.net.InetSocketAddress;
|
||||
|
||||
@ -48,7 +49,7 @@ public class NettyServer {
|
||||
bootstrap.channel(channel);
|
||||
|
||||
bootstrap.childHandler(new ChannelInitializer<SocketChannel>() {
|
||||
protected void initChannel(SocketChannel ch) {
|
||||
protected void initChannel(@NotNull SocketChannel ch) {
|
||||
ChannelConfig config = ch.config();
|
||||
config.setOption(ChannelOption.TCP_NODELAY, true);
|
||||
|
||||
|
@ -9,6 +9,7 @@ import net.minestom.server.network.ConnectionManager;
|
||||
import net.minestom.server.network.PacketProcessor;
|
||||
import net.minestom.server.network.netty.packet.InboundPacket;
|
||||
import net.minestom.server.network.player.PlayerConnection;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@Slf4j
|
||||
public class ClientChannel extends SimpleChannelInboundHandler<InboundPacket> {
|
||||
@ -21,7 +22,7 @@ public class ClientChannel extends SimpleChannelInboundHandler<InboundPacket> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void channelActive(ChannelHandlerContext ctx) {
|
||||
public void channelActive(@NotNull ChannelHandlerContext ctx) {
|
||||
//System.out.println("CONNECTION");
|
||||
}
|
||||
|
||||
@ -34,7 +35,7 @@ public class ClientChannel extends SimpleChannelInboundHandler<InboundPacket> {
|
||||
|
||||
if (availableBytes > 0) {
|
||||
// TODO log4j2
|
||||
System.out.println("Packet 0x" + Integer.toHexString(packet.packetId)
|
||||
System.err.println("WARNING: Packet 0x" + Integer.toHexString(packet.packetId)
|
||||
+ " not fully read (" + availableBytes + " bytes left)");
|
||||
|
||||
packet.body.skipBytes(availableBytes);
|
||||
@ -43,7 +44,7 @@ public class ClientChannel extends SimpleChannelInboundHandler<InboundPacket> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void channelInactive(ChannelHandlerContext ctx) {
|
||||
public void channelInactive(@NotNull ChannelHandlerContext ctx) {
|
||||
PlayerConnection playerConnection = packetProcessor.getPlayerConnection(ctx);
|
||||
if (playerConnection != null) {
|
||||
// Remove the connection
|
||||
|
@ -6,6 +6,7 @@ import io.netty.channel.ChannelFutureListener;
|
||||
import io.netty.channel.ChannelHandlerContext;
|
||||
import io.netty.channel.ChannelInboundHandlerAdapter;
|
||||
import net.minestom.server.MinecraftServer;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
@ -15,7 +16,7 @@ public class LegacyPingHandler extends ChannelInboundHandlerAdapter {
|
||||
private ByteBuf buf;
|
||||
|
||||
@Override
|
||||
public void channelRead(ChannelHandlerContext ctx, Object object) {
|
||||
public void channelRead(@NotNull ChannelHandlerContext ctx, @NotNull Object object) {
|
||||
ByteBuf buf = (ByteBuf) object;
|
||||
|
||||
if (this.buf != null) {
|
||||
@ -71,7 +72,7 @@ public class LegacyPingHandler extends ChannelInboundHandlerAdapter {
|
||||
return null;
|
||||
}
|
||||
|
||||
String result = buf.toString(buf.readerIndex(), size, StandardCharsets.UTF_16BE);
|
||||
final String result = buf.toString(buf.readerIndex(), size, StandardCharsets.UTF_16BE);
|
||||
buf.skipBytes(size);
|
||||
|
||||
return result;
|
||||
@ -93,7 +94,7 @@ public class LegacyPingHandler extends ChannelInboundHandlerAdapter {
|
||||
return;
|
||||
}
|
||||
|
||||
String s = readLegacyString(buf);
|
||||
final String s = readLegacyString(buf);
|
||||
|
||||
if (s == null) {
|
||||
return;
|
||||
@ -130,8 +131,7 @@ public class LegacyPingHandler extends ChannelInboundHandlerAdapter {
|
||||
}
|
||||
|
||||
private String formatResponse(int playerProtocol) {
|
||||
// todo server motd, online and slots
|
||||
final String motd = "Minestom";
|
||||
final String motd = MinecraftServer.getBrandName();
|
||||
final String version = MinecraftServer.VERSION_NAME;
|
||||
final int online = MinecraftServer.getConnectionManager().getOnlinePlayers().size();
|
||||
final int max = 0;
|
||||
@ -175,7 +175,7 @@ public class LegacyPingHandler extends ChannelInboundHandlerAdapter {
|
||||
ByteBuf response = Unpooled.buffer();
|
||||
response.writeByte(255);
|
||||
|
||||
char[] chars = s.toCharArray();
|
||||
final char[] chars = s.toCharArray();
|
||||
|
||||
response.writeShort(chars.length);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user