From 35a27638feaeedb3910e2e81bfe418eb505ff1f7 Mon Sep 17 00:00:00 2001 From: Ludwig Nussel Date: Mon, 2 Mar 2009 18:08:13 +0000 Subject: [PATCH] initialize qport with random value instead of time (#3999) --- code/qcommon/common.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/code/qcommon/common.c b/code/qcommon/common.c index 4436aea0..46ad77bc 100644 --- a/code/qcommon/common.c +++ b/code/qcommon/common.c @@ -2509,6 +2509,7 @@ Com_Init */ void Com_Init( char *commandLine ) { char *s; + int qport; Com_Printf( "%s %s %s\n", Q3_VERSION, PLATFORM_STRING, __DATE__ ); @@ -2627,7 +2628,13 @@ void Com_Init( char *commandLine ) { com_version = Cvar_Get ("version", s, CVAR_ROM | CVAR_SERVERINFO ); Sys_Init(); - Netchan_Init( Com_Milliseconds() & 0xffff ); // pick a port value that should be nice and random + + // Pick a port value that should be nice and random. + // As machines get faster Com_Milliseconds can't be used + // anymore as it results in a smaller and smaller range of + // qport values. + Com_RandomBytes( (byte*)&qport, sizeof(int) ); + Netchan_Init( qport & 0xffff ); VM_Init(); SV_Init();