summaryrefslogtreecommitdiff
path: root/client/adler32.py
diff options
context:
space:
mode:
Diffstat (limited to 'client/adler32.py')
-rwxr-xr-xclient/adler32.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/client/adler32.py b/client/adler32.py
new file mode 100755
index 0000000..65260e0
--- /dev/null
+++ b/client/adler32.py
@@ -0,0 +1,20 @@
+#!/usr/bin/env python3
+import sys
+import zlib
+
+def adler32(file):
+ with open(file, 'rb') as f:
+ checksum = zlib.adler32(f.read())
+ return f'{checksum:08x}'
+
+if __name__ == '__main__':
+ if len(sys.argv) < 2:
+ print(f"Usage: {sys.argv[0]} <file1> [file2] [file3] ...")
+ sys.exit(1)
+
+ for filename in sys.argv[1:]:
+ try:
+ print(adler32(filename))
+ except IOError as e:
+ print(f"Error: Could not read file '{filename}' - {e}")
+ sys.exit(1)