tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

verify_authenticated_util.py (718B)


      1 def verify_authenticated(request, response):
      2    expected_cookie_name_and_value = request.body
      3    if expected_cookie_name_and_value == b"":
      4        expected_cookie_name_and_value = b"auth_cookie=abcdef0123"
      5    (expected_name, expected_value) = expected_cookie_name_and_value.split(b"=")
      6 
      7    headers = []
      8    # Only CORS requests need the CORS headers
      9    if request.headers.get(b"origin") != None:
     10      headers = [(b"Access-Control-Allow-Origin",request.headers.get(b"origin")),
     11                 (b"Access-Control-Allow-Credentials", b"true")]
     12 
     13    cookie = request.cookies.get(expected_name)
     14    if cookie == None or cookie.value != expected_value:
     15        return (403, headers, "")
     16    return (200, headers, "")