Use flatten_dict_to_keypairs instead of recursive_keypairs
flatten_dict_to_keypairs has been added to oslo.utils in 3.18.0. So We should use it to replace recursive_keypairs. Change-Id: I2b407114cba62ef636870994e5da875fcec3301e
This commit is contained in:
parent
7409f5a458
commit
e6c39f9836
|
@ -18,22 +18,13 @@
|
|||
|
||||
import hashlib
|
||||
import hmac
|
||||
|
||||
|
||||
def recursive_keypairs(d):
|
||||
"""Generator that produces sequence of keypairs for nested dictionaries."""
|
||||
for name, value in sorted(d.iteritems()):
|
||||
if isinstance(value, dict):
|
||||
for subname, subvalue in recursive_keypairs(value):
|
||||
yield ('%s:%s' % (name, subname), subvalue)
|
||||
else:
|
||||
yield name, value
|
||||
from oslo.utils import dictutils
|
||||
|
||||
|
||||
def compute_signature(message, secret):
|
||||
"""Returns the signature for a message dictionary."""
|
||||
digest_maker = hmac.new(secret, '', hashlib.sha256)
|
||||
for name, value in recursive_keypairs(message):
|
||||
for name, value in dictutils.flatten_dict_to_keypairs(message, ':'):
|
||||
if name == 'message_signature':
|
||||
continue
|
||||
digest_maker.update(name)
|
||||
|
|
Loading…
Reference in New Issue