public void Log(Exception ex) { Logger.Error(" [AuthPacketReader] Exception: " + ex); if (client != null) { client.Close(); } }
public static void AddSession(Socket handler) { try { string address = GetIPAddress(handler); DateTime date = DateTime.Now; if (!SocketConnections.ContainsKey(address) && SocketConnections.TryAdd(address, date) || SocketConnections.TryGetValue(address, out DateTime getDate) && (date - getDate).TotalSeconds >= Settings.AuthConnectionIntervalSeconds && SocketConnections.TryUpdate(address, date, getDate)) { AuthClient client = new AuthClient(handler); for (int idx = 1; idx < 100000; idx++) { if (!SocketSessions.ContainsKey(idx) && SocketSessions.TryAdd(idx, client)) { client.SessionId = idx; client.SessionDate = date; client.StartSession(); return; } } client.Close(50); Logger.Error($" [AuthManager] [AddSession] Não foi possivel adicionar a lista de sessões. IPAddress ({address}) Date: {date}"); } else { if ((date - Logger.LastSaveLogTcpAuth2).Minutes >= 1) { Logger.Attacks($" [AuthManager] Está conexão está bloqueada por {Settings.AuthConnectionIntervalSeconds} segundos. IP ({address}) Date ({date})"); Logger.LastSaveLogTcpAuth2 = date; } handler.Close(50); } } catch (Exception ex) { Logger.Exception(ex); } }