summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2020-11-16 22:42:23 -0500
committerNick Mathewson <nickm@torproject.org>2020-11-16 22:42:23 -0500
commitc79957581e5d6c64fdae2be5b4d5a188ed18960a (patch)
tree4161518467a7be6c4fde298e5dbd28c9bee9791d
parentd425dbf04a6bbac7eae832bf51c2bfe061e2c426 (diff)
parent90017323942dc56b23d98c34894542e30856aeac (diff)
downloadtor-c79957581e5d6c64fdae2be5b4d5a188ed18960a.tar.gz
tor-c79957581e5d6c64fdae2be5b4d5a188ed18960a.zip
Merge branch 'maint-0.4.4' into master
-rw-r--r--changes/bug40179_part14
-rw-r--r--src/test/hs_ntor_ref.py6
2 files changed, 8 insertions, 2 deletions
diff --git a/changes/bug40179_part1 b/changes/bug40179_part1
new file mode 100644
index 0000000000..c302373534
--- /dev/null
+++ b/changes/bug40179_part1
@@ -0,0 +1,4 @@
+ o Minor bugfixes (testing, portability):
+ - Fix our Python reference-implementation for the v3 onion service
+ handshake so that it works correctly with the version of hashlib provided
+ by Python 3.9. Fixes part of bug 40179; bugfix on 0.3.1.6-rc.
diff --git a/src/test/hs_ntor_ref.py b/src/test/hs_ntor_ref.py
index f107cc36ca..98025dd584 100644
--- a/src/test/hs_ntor_ref.py
+++ b/src/test/hs_ntor_ref.py
@@ -70,14 +70,16 @@ except ImportError:
try:
# Pull the sha3 functions in.
from hashlib import sha3_256, shake_256
- shake_squeeze = shake_256.digest
+ def shake_squeeze(obj, n):
+ return obj.digest(n)
except ImportError:
if hasattr(sha3, "SHA3256"):
# If this happens, then we have the old "sha3" module which
# hashlib and pysha3 superseded.
sha3_256 = sha3.SHA3256
shake_256 = sha3.SHAKE256
- shake_squeeze = shake_256.squeeze
+ def shake_squeeze(obj, n):
+ return obj.squeeze(n)
else:
# error code 77 tells automake to skip this test
sys.exit(77)