From 81cfd6e956ec56028785a437ad9aa1c6f213315c Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Thu, 19 Sep 2024 01:05:15 +0100 Subject: [PATCH] some changes to PresenceServerPostHandler --- .../Presence/PresenceServerPostHandler.cs | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs b/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs index be16e17f9a..e4c99da007 100644 --- a/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs +++ b/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs @@ -69,18 +69,24 @@ namespace OpenSim.Server.Handlers.Presence string method = string.Empty; try { - Dictionary request = - ServerUtils.ParseQueryString(body); + Dictionary request = ServerUtils.ParseQueryString(body); - if (!request.ContainsKey("METHOD")) + if (!request.TryGetValue("METHOD", out object tmpobj) || tmpobj is not string) return FailureResult(); - method = request["METHOD"].ToString(); - + method = (string)tmpobj; switch (method) { case "login": - return LoginAgent(request); + { + //return LoginAgent(request); this is ilegal + if (request.TryGetValue("UserID", out object uo) && uo is string user) + m_log.Debug($"[PRESENCE HANDLER]: ilegal login try from {httpRequest.RemoteIPEndPoint} for userID {user}"); + else + m_log.Debug($"[PRESENCE HANDLER]: ilegal login try from {httpRequest.RemoteIPEndPoint} for unkown user"); + + return FailureResult(); + } case "logout": return LogoutAgent(request); case "logoutregion": @@ -92,11 +98,11 @@ namespace OpenSim.Server.Handlers.Presence case "getagents": return GetAgents(request); } - m_log.DebugFormat("[PRESENCE HANDLER]: unknown method request: {0}", method); + m_log.Debug($"[PRESENCE HANDLER]: unknown method request: {method}"); } catch (Exception e) { - m_log.DebugFormat("[PRESENCE HANDLER]: Exception in method {0}: {1}", method, e); + m_log.Debug($"[PRESENCE HANDLER]: Exception in method {method}: {e.Message}"); } return FailureResult();