aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaptak Sengupta <saptak013@gmail.com>2021-09-04 00:13:12 +0530
committerGitHub <noreply@github.com>2021-09-04 00:13:12 +0530
commit1b5b6a6b7143a8138987280b4d3f4e496a3e7496 (patch)
tree0555405862069878b353bcb0dd07492c439e77e6
parent810288b9c4f81214db117eb10f481a1a7e755cea (diff)
parentf4b35f25d30492150195ddfe0bf63592ee2bad9f (diff)
downloadonionshare-1b5b6a6b7143a8138987280b4d3f4e496a3e7496.tar.gz
onionshare-1b5b6a6b7143a8138987280b4d3f4e496a3e7496.zip
Merge pull request #1399 from easyteacher/develop
Make last_modified and if_date timezone-aware (Fix #1398)
-rw-r--r--cli/onionshare_cli/web/share_mode.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/cli/onionshare_cli/web/share_mode.py b/cli/onionshare_cli/web/share_mode.py
index 1dd9af13..8ac4055e 100644
--- a/cli/onionshare_cli/web/share_mode.py
+++ b/cli/onionshare_cli/web/share_mode.py
@@ -25,7 +25,7 @@ import sys
import tempfile
import zipfile
import mimetypes
-from datetime import datetime
+from datetime import datetime, timezone
from flask import Response, request, render_template, make_response, abort
from unidecode import unidecode
from werkzeug.http import parse_date, http_date
@@ -127,7 +127,7 @@ class ShareModeWeb(SendBaseModeWeb):
self.download_etag = None
self.gzip_etag = None
- self.last_modified = datetime.utcnow()
+ self.last_modified = datetime.now(tz=timezone.utc)
def define_routes(self):
"""
@@ -285,6 +285,8 @@ class ShareModeWeb(SendBaseModeWeb):
if_unmod = request.headers.get("If-Unmodified-Since")
if if_unmod:
if_date = parse_date(if_unmod)
+ if if_date and not if_date.tzinfo:
+ if_date = if_date.replace(tzinfo=timezone.utc) # Compatible with Flask < 2.0.0
if if_date and if_date > last_modified:
abort(412)
elif range_header is None: