summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Hellkamp <marc@gsites.de>2019-12-01 16:32:18 +0100
committerMarcel Hellkamp <marc@gsites.de>2019-12-01 16:34:11 +0100
commit774e1c7bbb67b813a38a5fa215dd3949289176ef (patch)
tree6822421d3367662d3c8e7ec614c0ad3bb58cda93
parentce00d547a663a5174501988ab6b09ca2fb08eee5 (diff)
downloadbottle-774e1c7bbb67b813a38a5fa215dd3949289176ef.tar.gz
fix #1181: digestmod parameter is now required since Python 3.8
Previous fix did not work
-rw-r--r--bottle.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/bottle.py b/bottle.py
index 3700173..26ef786 100644
--- a/bottle.py
+++ b/bottle.py
@@ -36,7 +36,7 @@ if __name__ == '__main__':
import gevent.monkey; gevent.monkey.patch_all()
import base64, cgi, email.utils, functools, hmac, itertools, mimetypes,\
- os, re, subprocess, sys, tempfile, threading, time, warnings
+ os, re, subprocess, sys, tempfile, threading, time, warnings, hashlib
from datetime import date as datedate, datetime, timedelta
from tempfile import TemporaryFile
@@ -2603,7 +2603,7 @@ def _lscmp(a, b):
def cookie_encode(data, key):
''' Encode and sign a pickle-able object. Return a (byte) string '''
msg = base64.b64encode(pickle.dumps(data, -1))
- sig = base64.b64encode(hmac.new(tob(key), msg, digestmod="md5").digest())
+ sig = base64.b64encode(hmac.new(tob(key), msg, digestmod=hashlib.md5).digest())
return tob('!') + sig + tob('?') + msg
@@ -2612,7 +2612,7 @@ def cookie_decode(data, key):
data = tob(data)
if cookie_is_encoded(data):
sig, msg = data.split(tob('?'), 1)
- if _lscmp(sig[1:], base64.b64encode(hmac.new(tob(key), msg, digestmod="md5").digest())):
+ if _lscmp(sig[1:], base64.b64encode(hmac.new(tob(key), msg, digestmod=hashlib.md5).digest())):
return pickle.loads(base64.b64decode(msg))
return None