Exemplo n.º 1
0
 private static void HandleSetClientAuth(NetworkMessage netMsg)
 {
     if (ServerAuthManager.FindAuthData(netMsg.conn) != null)
     {
         return;
     }
     GameNetworkManager.KickReason?kickReason = null;
     try
     {
         ClientAuthData    clientAuthData    = netMsg.ReadMessage <ClientAuthData>();
         NetworkConnection networkConnection = ServerAuthManager.FindConnectionForSteamID(clientAuthData.steamId);
         if (networkConnection != null)
         {
             Debug.LogFormat("SteamID {0} is already claimed by connection [{1}]. Connection [{2}] rejected.", new object[]
             {
                 clientAuthData.steamId,
                 networkConnection,
                 netMsg.conn
             });
             GameNetworkManager.singleton.ServerKickClient(netMsg.conn, GameNetworkManager.KickReason.Unspecified);
             return;
         }
         ServerAuthManager.KeyValue keyValue = new ServerAuthManager.KeyValue(netMsg.conn, clientAuthData);
         HGArrayUtilities.ArrayAppend <ServerAuthManager.KeyValue>(ref ServerAuthManager.instances, ref ServerAuthManager.instanceCount, ref keyValue);
         string value = GameNetworkManager.SvPasswordConVar.instance.value;
         if (value.Length != 0 && !(clientAuthData.password == value))
         {
             Debug.LogFormat("Rejecting connection from [{0}]: {1}", new object[]
             {
                 netMsg.conn,
                 "Bad password."
             });
             kickReason = new GameNetworkManager.KickReason?(GameNetworkManager.KickReason.BadPassword);
         }
         if (!true)
         {
             Debug.LogFormat("Rejecting connection from [{0}]: {1}", new object[]
             {
                 netMsg.conn,
                 "Bad version."
             });
             kickReason = new GameNetworkManager.KickReason?(GameNetworkManager.KickReason.BadVersion);
         }
         Action <NetworkConnection, ClientAuthData> action = ServerAuthManager.onAuthDataReceivedFromClient;
         if (action != null)
         {
             action(keyValue.conn, keyValue.authData);
         }
     }
     catch
     {
         Debug.LogFormat("Rejecting connection from [{0}]: {1}", new object[]
         {
             netMsg.conn,
             "Malformed auth data."
         });
         kickReason = new GameNetworkManager.KickReason?(GameNetworkManager.KickReason.MalformedAuthData);
     }
     if (kickReason != null)
     {
         GameNetworkManager.singleton.ServerKickClient(netMsg.conn, kickReason.Value);
     }
 }
Exemplo n.º 2
0
 // Token: 0x060020BA RID: 8378 RVA: 0x0008DA81 File Offset: 0x0008BC81
 public KeyValue(NetworkConnection conn, ClientAuthData authData)
 {
     this.conn     = conn;
     this.authData = authData;
 }