From 758a30e16646ed4a56b2c8d0c76499360e2ca7c2 Mon Sep 17 00:00:00 2001 From: Aevann1 Date: Thu, 26 May 2022 22:53:24 +0200 Subject: [PATCH] fsd --- files/__main__.py | 7 ++++--- files/helpers/wrappers.py | 2 +- files/routes/login.py | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/files/__main__.py b/files/__main__.py index 8a9259a90e..7b7dbe242f 100644 --- a/files/__main__.py +++ b/files/__main__.py @@ -85,9 +85,10 @@ mail = Mail(app) @app.before_request def before_request(): - ua = request.headers.get("User-Agent") - if not ua: abort(403) - ua = ua.lower() + g.agent = request.headers.get("User-Agent") + if not g.agent: abort(403) + + ua = g.agent.lower() with open('site_settings.json', 'r') as f: app.config['SETTINGS'] = json.load(f) diff --git a/files/helpers/wrappers.py b/files/helpers/wrappers.py index 8f6634b780..6de9c3ee98 100644 --- a/files/helpers/wrappers.py +++ b/files/helpers/wrappers.py @@ -54,7 +54,7 @@ def get_logged_in_user(): if session["session_id"] in loggedout: del loggedout[session["session_id"]] loggedin[v.id] = timestamp else: - ua = str(user_agents.parse(request.headers.get("User-Agent"))) + ua = str(user_agents.parse(g.agent)) if not ua.startswith('Spider'): loggedout[session["session_id"]] = (timestamp, ua) diff --git a/files/routes/login.py b/files/routes/login.py index ec52039580..c089db907e 100644 --- a/files/routes/login.py +++ b/files/routes/login.py @@ -204,7 +204,7 @@ def sign_up_get(v): token = token_hex(16) session["signup_token"] = token - formkey_hashstr = str(now) + token + agent + formkey_hashstr = str(now) + token + g.agent formkey = hmac.new(key=bytes(environ.get("MASTER_KEY"), "utf-16"), msg=bytes(formkey_hashstr, "utf-16"), @@ -237,7 +237,7 @@ def sign_up_post(v): submitted_token = session.get("signup_token", "") if not submitted_token: abort(400) - correct_formkey_hashstr = form_timestamp + submitted_token + agent + correct_formkey_hashstr = form_timestamp + submitted_token + g.agent correct_formkey = hmac.new(key=bytes(environ.get("MASTER_KEY"), "utf-16"), msg=bytes(correct_formkey_hashstr, "utf-16"),