13 lines
377 B
Python
13 lines
377 B
Python
def hash_bytestr_iter(bytesiter, hasher, ashexstr=False):
|
|
for block in bytesiter:
|
|
hasher.update(block)
|
|
return hasher.hexdigest() if ashexstr else hasher.digest()
|
|
|
|
|
|
def file_as_blockiter(afile, blocksize=65536):
|
|
with afile:
|
|
block = afile.read(blocksize)
|
|
while len(block) > 0:
|
|
yield block
|
|
block = afile.read(blocksize)
|