app/django/utils/hashcompat.py
author Sverre Rabbelier <srabbelier@gmail.com>
Wed, 26 Nov 2008 23:54:40 +0000
changeset 592 be98a2f5d8a2
parent 323 ff1a9aa48cfd
permissions -rw-r--r--
Fixed an outstanding TODO for tlarsen A nice side-effect is that accounts now does not depend on out_of_band, sadly that does not fix the cyclic dependency, but it is a nice side-effect nonetheless.

"""
The md5 and sha modules are deprecated since Python 2.5, replaced by the
hashlib module containing both hash algorithms. Here, we provide a common
interface to the md5 and sha constructors, preferring the hashlib module when
available.
"""

try:
    import hashlib
    md5_constructor = hashlib.md5
    sha_constructor = hashlib.sha1
except ImportError:
    import md5
    md5_constructor = md5.new
    import sha
    sha_constructor = sha.new