Multiplayer Authentication functions
InitiateGameConnection() starts the state machine for authenticating the game client with the game server
It is the client portion of a three-way handshake between the client, the game server, and the steam servers
Parameters:
void *pAuthBlob - a pointer to empty memory that will be filled in with the authentication token.
int cbMaxAuthBlob - the number of bytes of allocated memory in pBlob. Should be at least 2048 bytes.
CSteamID steamIDGameServer - the steamID of the game server, received from the game server by the client
CGameID gameID - the ID of the current game. For games without mods, this is just CGameID( <appID> )
uint32 unIPServer, uint16 usPortServer - the IP address of the game server
bool bSecure - whether or not the client thinks that the game server is reporting itself as secure (i.e. VAC is running)
return value - returns the number of bytes written to pBlob. If the return is 0, then the buffer passed in was too small, and the call has failed
The contents of pBlob should then be sent to the game server, for it to use to complete the authentication process.