* cl_guid for semi-reliable server authentication (from tjw)

This commit is contained in:
Tim Angus 2006-04-22 22:21:56 +00:00
parent 68b9eb3fba
commit 8aecee5158
4 changed files with 31 additions and 0 deletions

View file

@ -2378,6 +2378,28 @@ void CL_StopVideo_f( void )
CL_CloseAVI( );
}
static void CL_GenerateQKey(void)
{
int len = 0;
unsigned char buff[2048];
len = FS_ReadFile(QKEY_FILE, NULL);
if(len >= (int)sizeof(buff)) {
Com_Printf("QKEY found.\n");
return;
}
else {
int i;
srand(time(0));
for(i = 0; i < sizeof(buff) - 1; i++) {
buff[i] = (unsigned char)(rand() % 255);
}
buff[i] = 0;
Com_Printf("QKEY generated\n");
FS_WriteFile(QKEY_FILE, buff, sizeof(buff));
}
}
/*
====================
CL_Init
@ -2526,6 +2548,9 @@ void CL_Init( void ) {
Cvar_Set( "cl_running", "1" );
CL_GenerateQKey();
Cvar_Get("cl_guid", Com_MD5File(QKEY_FILE, 0), CVAR_USERINFO | CVAR_ROM);
Com_Printf( "----- Client Initialization Complete -----\n" );
}