Loading bridgedb/captcha.py +1 −1 Original line number Diff line number Diff line Loading @@ -373,7 +373,7 @@ class GimpCaptcha(Captcha): encBlob = self.publicKey.encrypt(blob.encode('utf-8')) hmac = crypto.getHMAC(self.hmacKey, encBlob) challenge = urlsafe_b64encode(hmac + encBlob) return challenge return challenge.decode("utf-8") def get(self): """Get a random CAPTCHA from the cache directory. Loading bridgedb/distributors/https/server.py +4 −4 Original line number Diff line number Diff line Loading @@ -473,11 +473,11 @@ class CaptchaProtectedResource(CustomErrorHandlingResource, CSPResource): :rtype: tuple :returns: A 2-tuple of ``(image, challenge)``, where ``image`` is a binary, JPEG-encoded image, and ``challenge`` is a unique JPEG-encoded image of type bytes, and ``challenge`` is a unique string. If unable to retrieve a CAPTCHA, returns a tuple containing two empty strings. containing (b'', ''). """ return ('', '') return (b'', '') def extractClientSolution(self, request): """Extract the client's CAPTCHA solution from a POST request. Loading Loading @@ -539,7 +539,7 @@ class CaptchaProtectedResource(CustomErrorHandlingResource, CSPResource): lang=langs[0], langOverride=translations.isLangOverridden(request), imgstr=imgstr.decode("utf-8"), challenge_field=challenge.decode("utf-8")) challenge_field=challenge) except Exception as err: rendered = replaceErrorPage(request, err, 'captcha.html') Loading bridgedb/test/test_captcha.py +4 −4 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ class ReCaptchaTests(unittest.TestCase): raise unittest.SkipTest(reason) else: self.assertIsInstance(self.c.image, bytes) self.assertIsInstance(self.c.challenge, bytes) self.assertIsInstance(self.c.challenge, str) finally: # Replace the original environment variable if there was one: if oldkey: Loading Loading @@ -146,7 +146,7 @@ class GimpCaptchaTests(unittest.TestCase): c = captcha.GimpCaptcha(self.publik, self.sekrit, self.hmacKey, self.cacheDir) challenge = c.createChallenge('w00t') self.assertIsInstance(challenge, bytes) self.assertIsInstance(challenge, str) def test_createChallenge_base64(self): """createChallenge() return value should be urlsafe base64-encoded.""" Loading Loading @@ -190,7 +190,7 @@ class GimpCaptchaTests(unittest.TestCase): self.cacheDir) image, challenge = c.get() self.assertIsInstance(image, bytes) self.assertIsInstance(challenge, bytes) self.assertIsInstance(challenge, str) def test_get_emptyCacheDir(self): """An empty cacheDir should raise GimpCaptchaError.""" Loading Loading @@ -238,7 +238,7 @@ class GimpCaptchaTests(unittest.TestCase): c = captcha.GimpCaptcha(self.publik, self.sekrit, self.hmacKey, self.cacheDir) image, challenge = c.get() challengeBadB64 = challenge.decode('utf-8').rstrip('==') + "\x42\x42\x42" challengeBadB64 = challenge.rstrip('==') + "\x42\x42\x42" self.assertEquals( c.check(challenge, c.answer, c.secretKey, c.hmacKey), True) Loading Loading
bridgedb/captcha.py +1 −1 Original line number Diff line number Diff line Loading @@ -373,7 +373,7 @@ class GimpCaptcha(Captcha): encBlob = self.publicKey.encrypt(blob.encode('utf-8')) hmac = crypto.getHMAC(self.hmacKey, encBlob) challenge = urlsafe_b64encode(hmac + encBlob) return challenge return challenge.decode("utf-8") def get(self): """Get a random CAPTCHA from the cache directory. Loading
bridgedb/distributors/https/server.py +4 −4 Original line number Diff line number Diff line Loading @@ -473,11 +473,11 @@ class CaptchaProtectedResource(CustomErrorHandlingResource, CSPResource): :rtype: tuple :returns: A 2-tuple of ``(image, challenge)``, where ``image`` is a binary, JPEG-encoded image, and ``challenge`` is a unique JPEG-encoded image of type bytes, and ``challenge`` is a unique string. If unable to retrieve a CAPTCHA, returns a tuple containing two empty strings. containing (b'', ''). """ return ('', '') return (b'', '') def extractClientSolution(self, request): """Extract the client's CAPTCHA solution from a POST request. Loading Loading @@ -539,7 +539,7 @@ class CaptchaProtectedResource(CustomErrorHandlingResource, CSPResource): lang=langs[0], langOverride=translations.isLangOverridden(request), imgstr=imgstr.decode("utf-8"), challenge_field=challenge.decode("utf-8")) challenge_field=challenge) except Exception as err: rendered = replaceErrorPage(request, err, 'captcha.html') Loading
bridgedb/test/test_captcha.py +4 −4 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ class ReCaptchaTests(unittest.TestCase): raise unittest.SkipTest(reason) else: self.assertIsInstance(self.c.image, bytes) self.assertIsInstance(self.c.challenge, bytes) self.assertIsInstance(self.c.challenge, str) finally: # Replace the original environment variable if there was one: if oldkey: Loading Loading @@ -146,7 +146,7 @@ class GimpCaptchaTests(unittest.TestCase): c = captcha.GimpCaptcha(self.publik, self.sekrit, self.hmacKey, self.cacheDir) challenge = c.createChallenge('w00t') self.assertIsInstance(challenge, bytes) self.assertIsInstance(challenge, str) def test_createChallenge_base64(self): """createChallenge() return value should be urlsafe base64-encoded.""" Loading Loading @@ -190,7 +190,7 @@ class GimpCaptchaTests(unittest.TestCase): self.cacheDir) image, challenge = c.get() self.assertIsInstance(image, bytes) self.assertIsInstance(challenge, bytes) self.assertIsInstance(challenge, str) def test_get_emptyCacheDir(self): """An empty cacheDir should raise GimpCaptchaError.""" Loading Loading @@ -238,7 +238,7 @@ class GimpCaptchaTests(unittest.TestCase): c = captcha.GimpCaptcha(self.publik, self.sekrit, self.hmacKey, self.cacheDir) image, challenge = c.get() challengeBadB64 = challenge.decode('utf-8').rstrip('==') + "\x42\x42\x42" challengeBadB64 = challenge.rstrip('==') + "\x42\x42\x42" self.assertEquals( c.check(challenge, c.answer, c.secretKey, c.hmacKey), True) Loading