From d07e822bfcbd6798f23eb4c59bf02fb9f7dd56e4 Mon Sep 17 00:00:00 2001 From: DarkAtra Date: Sat, 6 Aug 2022 17:13:07 +0200 Subject: [PATCH] fix(gh-106): interpret game port as unsigned short --- .../source/query/info/SourceQueryInfoDecoder.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/protocols/valve/source/query/src/main/java/com/ibasco/agql/protocols/valve/source/query/info/SourceQueryInfoDecoder.java b/protocols/valve/source/query/src/main/java/com/ibasco/agql/protocols/valve/source/query/info/SourceQueryInfoDecoder.java index fc0c56243e..08924ea3f5 100644 --- a/protocols/valve/source/query/src/main/java/com/ibasco/agql/protocols/valve/source/query/info/SourceQueryInfoDecoder.java +++ b/protocols/valve/source/query/src/main/java/com/ibasco/agql/protocols/valve/source/query/info/SourceQueryInfoDecoder.java @@ -16,20 +16,21 @@ package com.ibasco.agql.protocols.valve.source.query.info; +import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_GAMEID; +import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_PORT; +import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_SOURCETV; +import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_STEAMID; +import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_TAGS; +import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.SOURCE_QUERY_INFO_RES; import com.ibasco.agql.core.NettyChannelContext; import com.ibasco.agql.core.util.Netty; import com.ibasco.agql.protocols.valve.source.query.common.handlers.SourceQueryAuthDecoder; import com.ibasco.agql.protocols.valve.source.query.common.packets.SourceQuerySinglePacket; import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; + import java.nio.charset.StandardCharsets; import java.util.function.Function; -import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_GAMEID; -import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_PORT; -import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_SOURCETV; -import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_STEAMID; -import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.A2S_INFO_EDF_TAGS; -import static com.ibasco.agql.protocols.valve.source.query.SourceQuery.SOURCE_QUERY_INFO_RES; /** *

SourceQueryInfoDecoder class.

@@ -93,7 +94,7 @@ protected Object decodeQueryPacket(ChannelHandlerContext ctx, SourceQueryInfoReq } int flags = buf.readUnsignedByte(); - decodeFlag("edfServerPort", buf, flags, A2S_INFO_EDF_PORT, buf::readShortLE, info::setGamePort, Short::intValue); + decodeFlag("edfServerPort", buf, flags, A2S_INFO_EDF_PORT, buf::readUnsignedShortLE, info::setGamePort, Integer::intValue); decodeFlag("edfServerSteamId", buf, flags, A2S_INFO_EDF_STEAMID, buf::readLongLE, info::setServerId); decodeFlag("edfSourceTvPort", buf, flags, A2S_INFO_EDF_SOURCETV, buf::readShortLE, info::setTvPort, Short::intValue); decodeFlag("edfSourceTvName", buf, flags, A2S_INFO_EDF_SOURCETV, Netty::readString, info::setTvName);