Browse Source

engine: fixed vulnerability in NAT bypass mechanism

pull/2/head
SNMetamorph 2 years ago committed by Alibek Omarov
parent
commit
a5ba43ea39
  1. 10
      engine/server/sv_client.c

10
engine/server/sv_client.c

@ -2268,10 +2268,14 @@ void SV_ConnectionlessPacket( netadr_t from, sizebuf_t *msg )
else if( !Q_strcmp( pcmd, "i" )) NET_SendPacket( NS_SERVER, 5, "\xFF\xFF\xFF\xFFj", from ); // A2A_PING else if( !Q_strcmp( pcmd, "i" )) NET_SendPacket( NS_SERVER, 5, "\xFF\xFF\xFF\xFFj", from ); // A2A_PING
else if (!Q_strcmp( pcmd, "c" )) else if (!Q_strcmp( pcmd, "c" ))
{ {
netadr_t to; qboolean sv_nat = Cvar_VariableInteger( "sv_nat" );
if( sv_nat )
{
netadr_t to;
if( NET_StringToAdr( Cmd_Argv( 1 ), &to )) if( NET_StringToAdr( Cmd_Argv( 1 ), &to ) && !NET_IsReservedAdr( to ))
SV_Info( to ); SV_Info( to );
}
} }
else if( svgame.dllFuncs.pfnConnectionlessPacket( &from, args, buf, &len )) else if( svgame.dllFuncs.pfnConnectionlessPacket( &from, args, buf, &len ))
{ {

Loading…
Cancel
Save