Use get_valid_checksum_keys() function instead of accessing hashfunc_map
directly throughout the Portage.
---
pym/portage/_emirrordist/FetchTask.py | 2 +-
pym/portage/dbapi/bintree.py | 4 ++--
pym/portage/eclass_cache.py | 2 +-
pym/portage/manifest.py | 4 ++--
pym/portage/package/ebuild/fetch.py | 10 +++++-----
5 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/pym/portage/_emirrordist/FetchTask.py
b/pym/portage/_emirrordist/FetchTask.py
index 64de67582..203b8c213 100644
--- a/pym/portage/_emirrordist/FetchTask.py
+++ b/pym/portage/_emirrordist/FetchTask.py
@@ -574,7 +574,7 @@ class FetchTask(CompositeTask):
else:
for hash_name in self.digests:
if hash_name != "size" and \
- hash_name in
portage.checksum.hashfunc_map:
+ hash_name in
portage.checksum.get_valid_checksum_keys():
return hash_name
return None
diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py
index ae9e7caa2..12c3d3e51 100644
--- a/pym/portage/dbapi/bintree.py
+++ b/pym/portage/dbapi/bintree.py
@@ -7,7 +7,7 @@ __all__ = ["bindbapi", "binarytree"]
import portage
portage.proxy.lazyimport.lazyimport(globals(),
- 'portage.checksum:hashfunc_map,perform_multiple_checksums,' + \
+ 'portage.checksum:get_valid_checksum_keys,perform_multiple_checksums,'
+ \
'verify_all,_apply_hash_filter,_hash_filter',
'portage.dbapi.dep_expand:dep_expand',
'portage.dep:dep_getkey,isjustname,isvalidatom,match_from_list',
@@ -1546,7 +1546,7 @@ class binarytree(object):
if metadata is None:
return digests
- for k in hashfunc_map:
+ for k in get_valid_checksum_keys():
v = metadata.get(k)
if not v:
continue
diff --git a/pym/portage/eclass_cache.py b/pym/portage/eclass_cache.py
index 2988d25d6..d2d9e2710 100644
--- a/pym/portage/eclass_cache.py
+++ b/pym/portage/eclass_cache.py
@@ -48,7 +48,7 @@ class hashed_path(object):
# we don't care to allow .mD5 as an alias for .md5
raise AttributeError(attr)
hashname = attr.upper()
- if hashname not in checksum.hashfunc_map:
+ if hashname not in checksum.get_valid_checksum_keys():
raise AttributeError(attr)
val = checksum.perform_checksum(self.location, hashname)[0]
setattr(self, attr, val)
diff --git a/pym/portage/manifest.py b/pym/portage/manifest.py
index 7278e21c1..28a77ba87 100644
--- a/pym/portage/manifest.py
+++ b/pym/portage/manifest.py
@@ -13,7 +13,7 @@ import warnings
import portage
portage.proxy.lazyimport.lazyimport(globals(),
- 'portage.checksum:hashfunc_map,perform_multiple_checksums,' + \
+ 'portage.checksum:get_valid_checksum_keys,perform_multiple_checksums,'
+ \
'verify_all,_apply_hash_filter,_filter_unaccelarated_hashes',
'portage.repository.config:_find_invalid_path_char',
'portage.util:write_atomic,writemsg_level',
@@ -154,7 +154,7 @@ class Manifest(object):
self.hashes.update(hashes.intersection(MANIFEST2_HASH_FUNCTIONS))
self.hashes.difference_update(hashname for hashname in \
- list(self.hashes) if hashname not in hashfunc_map)
+ list(self.hashes) if hashname not in
get_valid_checksum_keys())
self.hashes.add("size")
self.hashes.add(MANIFEST2_REQUIRED_HASH)
for t in MANIFEST2_IDENTIFIERS:
diff --git a/pym/portage/package/ebuild/fetch.py
b/pym/portage/package/ebuild/fetch.py
index 8755b7522..5c4b74446 100644
--- a/pym/portage/package/ebuild/fetch.py
+++ b/pym/portage/package/ebuild/fetch.py
@@ -29,7 +29,7 @@ portage.proxy.lazyimport.lazyimport(globals(),
from portage import OrderedDict, os, selinux, shutil, _encodings, \
_shell_quote, _unicode_encode
-from portage.checksum import (hashfunc_map, perform_md5, verify_all,
+from portage.checksum import (get_valid_checksum_keys, perform_md5, verify_all,
_filter_unaccelarated_hashes, _hash_filter, _apply_hash_filter)
from portage.const import BASH_BINARY, CUSTOM_MIRRORS_FILE, \
GLOBAL_CONFIG_PATH
@@ -551,6 +551,8 @@ def fetch(myuris, mysettings, listonly=0, fetchonly=0,
distdir_writable = can_fetch and not fetch_to_ro
failed_files = set()
restrict_fetch_msg = False
+ valid_hashes = frozenset(get_valid_checksum_keys())
+ valid_hashes.discard("size")
for myfile in filedict:
"""
@@ -564,11 +566,9 @@ def fetch(myuris, mysettings, listonly=0, fetchonly=0,
orig_digests = mydigests.get(myfile, {})
if not (allow_missing_digests or listonly):
- verifiable_hash_types =
set(orig_digests).intersection(hashfunc_map)
- verifiable_hash_types.discard("size")
+ verifiable_hash_types =
set(orig_digests).intersection(valid_hashes)
if not verifiable_hash_types:
- expected = set(hashfunc_map)
- expected.discard("size")
+ expected = set(valid_hashes)
expected = " ".join(sorted(expected))
got = set(orig_digests)
got.discard("size")
--
2.12.0