From: Zac Medico Date: Sun, 2 Oct 2011 06:01:17 +0000 (-0700) Subject: checksum.py: lazily import bundled whirlpool X-Git-Tag: v2.2.0_alpha61~22 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=06ad8911b5790a2ed963fe1b981751ab0a2be8d5;p=portage.git checksum.py: lazily import bundled whirlpool --- diff --git a/pym/portage/checksum.py b/pym/portage/checksum.py index a4a744ba9..080a6dff3 100644 --- a/pym/portage/checksum.py +++ b/pym/portage/checksum.py @@ -76,10 +76,6 @@ except ImportError: sha1hash = _generate_hash_function("SHA1", _new_sha1, origin="internal") -# Bundled WHIRLPOOL implementation -from portage.util.whirlpool import new as _new_whirlpool -whirlpoolhash = _generate_hash_function("WHIRLPOOL", _new_whirlpool, origin="bundled") - # Try to use mhash if available # mhash causes GIL presently, so it gets less priority than hashlib and # pycrypto. However, it might be the only accelerated implementation of @@ -104,7 +100,7 @@ try: from Crypto.Hash import SHA256, RIPEMD sha256hash = _generate_hash_function("SHA256", SHA256.new, origin="pycrypto") rmd160hash = _generate_hash_function("RMD160", RIPEMD.new, origin="pycrypto") -except ImportError as e: +except ImportError: pass # Use hashlib from python-2.5 if available and prefer it over pycrypto and internal fallbacks. @@ -127,9 +123,13 @@ try: functools.partial(hashlib.new, hash_name), \ origin='hashlib') -except ImportError as e: +except ImportError: pass - + +if "WHIRLPOOL" not in hashfunc_map: + # Bundled WHIRLPOOL implementation + from portage.util.whirlpool import new as _new_whirlpool + whirlpoolhash = _generate_hash_function("WHIRLPOOL", _new_whirlpool, origin="bundled") # Use python-fchksum if available, prefer it over all other MD5 implementations try: