123456789101112131415161718192021222324252627282930313233 |
- # Copyright (c) 2020, 2021 The Linux Foundation
- #
- # SPDX-License-Identifier: Apache-2.0
- import hashlib
- from west import log
- def getHashes(filePath):
- """
- Scan for and return hashes.
- Arguments:
- - filePath: path to file to scan.
- Returns: tuple of (SHA1, SHA256, MD5) hashes for filePath, or
- None if file is not found.
- """
- hSHA1 = hashlib.sha1()
- hSHA256 = hashlib.sha256()
- hMD5 = hashlib.md5()
- log.dbg(f" - getting hashes for {filePath}")
- try:
- with open(filePath, 'rb') as f:
- buf = f.read()
- hSHA1.update(buf)
- hSHA256.update(buf)
- hMD5.update(buf)
- except OSError:
- return None
- return (hSHA1.hexdigest(), hSHA256.hexdigest(), hMD5.hexdigest())
|