web/lib/django/utils/hashcompat.py
changeset 38 77b6da96e6f1
equal deleted inserted replaced
37:8d941af65caf 38:77b6da96e6f1
       
     1 """
       
     2 The md5 and sha modules are deprecated since Python 2.5, replaced by the
       
     3 hashlib module containing both hash algorithms. Here, we provide a common
       
     4 interface to the md5 and sha constructors, preferring the hashlib module when
       
     5 available.
       
     6 """
       
     7 
       
     8 try:
       
     9     import hashlib
       
    10     md5_constructor = hashlib.md5
       
    11     md5_hmac = md5_constructor
       
    12     sha_constructor = hashlib.sha1
       
    13     sha_hmac = sha_constructor
       
    14 except ImportError:
       
    15     import md5
       
    16     md5_constructor = md5.new
       
    17     md5_hmac = md5
       
    18     import sha
       
    19     sha_constructor = sha.new
       
    20     sha_hmac = sha