Пример #1
0
 private void NetMessageReader_CatanClientAuth_Request_ReadCompleted(object obj, NetworkMessageReaderReadCompletedEventArgs e)
 {
     lock (catanClients)
     {
         try
         {
             CatanClientAuthenticationRequestMessage authMessage = e.NetworkMessage as CatanClientAuthenticationRequestMessage;
             // Checking auth
             if (iLogicLayer.IsAuthenticationRequestMessageOk(authMessage))
             {
                 NetworkMessageWriter netMessageWriter = new NetworkMessageWriter(e.TcpClient);
                 netMessageWriter.WriteError     += (o, ee) => { ee.TcpClient.Close(); };
                 netMessageWriter.WriteCompleted += NetMessageWriter_CatanClientAuth_Response_WriteCompleted;
                 netMessageWriter.WriteAsync(new CatanClientAuthenticationResponseMessage(authMessage));
             }
             else
             {
                 e.TcpClient.Close(); // Client wird rausgeworfen, wenn Pass falsch ist !!
             }
         }
         catch (Exception ex)
         {
             e.TcpClient.Close();
             iLogicLayer.ThrowException(ex);
         }
     }
 }
Пример #2
0
 public bool IsAuthenticationRequestMessageOk(CatanClientAuthenticationRequestMessage authMessage)
 {
     return(this.iPersistenceLayer.ExistPlayer(authMessage.MailAddress, authMessage.Password));
 }