MCPcopy Create free account
hub / github.com/RT-Thread/env-windows / _init_old

Method _init_old

tools/python-3.11.9-amd64/Lib/hmac.py:71–108  ·  view source on GitHub ↗
(self, key, msg, digestmod)

Source from the content-addressed store, hash-verified

69 self.block_size = self._hmac.block_size
70
71 def _init_old(self, key, msg, digestmod):
72 if callable(digestmod):
73 digest_cons = digestmod
74 elif isinstance(digestmod, str):
75 digest_cons = lambda d=b'': _hashlib.new(digestmod, d)
76 else:
77 digest_cons = lambda d=b'': digestmod.new(d)
78
79 self._hmac = None
80 self._outer = digest_cons()
81 self._inner = digest_cons()
82 self.digest_size = self._inner.digest_size
83
84 if hasattr(self._inner, 'block_size'):
85 blocksize = self._inner.block_size
86 if blocksize < 16:
87 _warnings.warn('block_size of %d seems too small; using our '
88 'default of %d.' % (blocksize, self.blocksize),
89 RuntimeWarning, 2)
90 blocksize = self.blocksize
91 else:
92 _warnings.warn('No block_size attribute on given digest object; '
93 'Assuming %d.' % (self.blocksize),
94 RuntimeWarning, 2)
95 blocksize = self.blocksize
96
97 if len(key) > blocksize:
98 key = digest_cons(key).digest()
99
100 # self.blocksize is the default blocksize. self.block_size is
101 # effective block size as well as the public API attribute.
102 self.block_size = blocksize
103
104 key = key.ljust(blocksize, b'\0')
105 self._outer.update(key.translate(trans_5C))
106 self._inner.update(key.translate(trans_36))
107 if msg is not None:
108 self.update(msg)
109
110 @property
111 def name(self):

Callers 1

__init__Method · 0.95

Calls 7

updateMethod · 0.95
digestMethod · 0.80
ljustMethod · 0.80
translateMethod · 0.80
callableFunction · 0.50
newMethod · 0.45
warnMethod · 0.45

Tested by

no test coverage detected