Trying to fix SESSION HANDLER

This commit is contained in:
ZKWolf 2024-02-11 01:20:56 +01:00
parent 97adf4b2c9
commit 7d892dab2a

View File

@ -28,10 +28,10 @@ def _get_remote_ip(check_type="strict"):
def check_for_game_client(check_type="strict"):
if check_type == "strict":
user_agent = sanitize_input(request.headers.get('User-Agent'))
if user_agent.startswith("TheExit/++UE4+Release-4.2"):
_get_remote_ip("strict")
elif user_agent.startswith("game=TheExit, engine=UE4, version="):
if user_agent.startswith("TheExit/++UE4+Release-4.21-CL-0"):
_get_remote_ip("strict")
# elif user_agent.startswith("game=TheExit, engine=UE4, version="):
# _get_remote_ip("strict")
elif user_agent.startswith("CrashReportClient/++UE4+Release-4.21"):
_get_remote_ip("strict")
elif user_agent.startswith("CrashReportClient/++UE4+Release-4.20-CL-0"):
@ -86,29 +86,27 @@ class Session_Manager:
def get_user_id(self, session_id):
self.clean_sessions()
if session_id not in self.sessions:
logger.graylog_logger(level="info", handler="session_manager", message=f"Session ID: {session_id} not found.")
return None
if session_id:
return None
else:
logger.graylog_logger(level="info", handler="session_manager",
message=f"Session ID: {session_id} not found.")
return None
self.extend_session(session_id)
self.save_sessions()
return self.sessions[session_id]["user"]
def extend_session(self, session_id):
session_expires = self.sessions[session_id]["expires"]
epoch = time.time() + 3600
if session_expires <= epoch:
logger.graylog_logger(level="info", handler="session_manager", message=f"Extending Session: {session_id}")
self.sessions[session_id]["expires"] = time.time() + 7200
self.save_sessions()
else:
pass
self.sessions[session_id]["expires"] = time.time() + 3600
self.save_sessions()
def clean_sessions(self):
current_time = time.time()
if self.sessions == {}:
return
expired_sessions = [session_id for session_id, data in self.sessions.items() if data["expires"] < current_time]
for session_id in expired_sessions:
self.sessions.pop(session_id)
for session in self.sessions:
if self.sessions[session]["expires"] < current_time:
self.sessions.pop(session)
def __write_sessions__(self):
with open(self.session_file_path, "w") as session_file: