From afac46f0b71996e170698b2dd19577e592794a6c Mon Sep 17 00:00:00 2001 From: Thomas Desvenain Date: Wed, 13 Apr 2011 22:25:10 +0000 Subject: [PATCH] avoid if/else structures for hashlib/sha compatibility svn path=/plone.formwidget.captcha/trunk/; revision=48798 --- plone/formwidget/captcha/browser/captcha.py | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/plone/formwidget/captcha/browser/captcha.py b/plone/formwidget/captcha/browser/captcha.py index cf5c0c4..c332932 100644 --- a/plone/formwidget/captcha/browser/captcha.py +++ b/plone/formwidget/captcha/browser/captcha.py @@ -3,11 +3,9 @@ import os.path import random import re try: - import hashlib - USE_HASHLIB = True + from hashlib import sha1 as sha except ImportError: - import sha - USE_HASHLIB = False + from sha import sha import string import sys @@ -60,11 +58,7 @@ class Captcha(BrowserView): def _generate_session(self): """Create a new session id""" if self._session_id is None: - if USE_HASHLIB: - id = hashlib.sha1(str(random.randrange(sys.maxint))).hexdigest() - else: - id = sha.new(str(random.randrange(sys.maxint))).hexdigest() - + id = sha(str(random.randrange(sys.maxint))).hexdigest() self._session_id = id self._setcookie(id) @@ -93,12 +87,8 @@ class Captcha(BrowserView): # we're in. Indeed, every second, int(time.time()) increments by 1, so # int(time.time() / 300) will increment by 1 every 5 minutes. secret = getUtility(IKeyManager).secret() - if USE_HASHLIB: - seeds = [hashlib.sha1(secret + session + str(nowish)).digest(), - hashlib.sha1(secret + session + str(nowish - 1)).digest()] - else: - seeds = [sha.new(secret + session + str(nowish)).digest(), - sha.new(secret + session + str(nowish - 1)).digest()] + seeds = [sha(secret + session + str(nowish)).digest(), + sha(secret + session + str(nowish - 1)).digest()] # The line above generates a seed based on the "nowish" of 5 minutes ago. words = []