diff options
author | Lars Wirzenius <liw@liw.fi> | 2011-06-11 20:05:32 +0100 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2011-06-11 20:05:32 +0100 |
commit | 53f0eabae5ce9514ced62cea4568ddbe9d2a2fe0 (patch) | |
tree | 2e1d5c0d29e930a900da269d37659b658bcc8bc8 /summainlib.py | |
parent | 6c19a6cb97fd989bb18f2cc1545d4531a036c97f (diff) | |
download | summain-53f0eabae5ce9514ced62cea4568ddbe9d2a2fe0.tar.gz |
Add more checksum types.
Diffstat (limited to 'summainlib.py')
-rw-r--r-- | summainlib.py | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/summainlib.py b/summainlib.py index c2dc2ff..bb7d668 100644 --- a/summainlib.py +++ b/summainlib.py @@ -161,7 +161,8 @@ class FilesystemObject(object): ''' def __init__(self, filename, nn, pn, exclude, checksums, - stat_result=None, sha1=None, + stat_result=None, sha1=None, sha224=None, + sha256=None, sha384=None, sha512=None, md5=None, open_file=None, readlink=None): self._filename = filename self._exclude = set(self._normalize_key(k) for k in exclude) @@ -170,6 +171,10 @@ class FilesystemObject(object): self._nn = nn self._md5 = md5 or hashlib.md5() self._sha1 = sha1 or hashlib.sha1() + self._sha224 = sha224 or hashlib.sha224() + self._sha256 = sha256 or hashlib.sha256() + self._sha384 = sha384 or hashlib.sha384() + self._sha512 = sha512 or hashlib.sha512() self._stat_result = stat_result or os.lstat(filename) self.open_file = open_file or file self.readlink = readlink or os.readlink @@ -215,6 +220,18 @@ class FilesystemObject(object): def _compute_sha1(self): return self.compute_checksum(self._filename, self._sha1) + def _compute_sha224(self): + return self.compute_checksum(self._filename, self._sha224) + + def _compute_sha256(self): + return self.compute_checksum(self._filename, self._sha256) + + def _compute_sha384(self): + return self.compute_checksum(self._filename, self._sha384) + + def _compute_sha512(self): + return self.compute_checksum(self._filename, self._sha512) + def _compute_target(self): if stat.S_ISLNK(self._stat_result.st_mode): return self.readlink(self._filename) |