add the "fp" command to dump fingerprints; minor fixes to the help doc
authorale <ale@incal.net>
Mon, 6 Feb 2012 19:33:09 +0000 (19:33 +0000)
committerale <ale@incal.net>
Mon, 6 Feb 2012 19:33:09 +0000 (19:33 +0000)
cam/main.py

index 2e80029..538697e 100755 (executable)
@@ -28,7 +28,10 @@ Known commands:
   list
     List all known certificates
 
-  files <TAG>...
+  fp [<TAG>...]
+    Print SHA1/MD5 fingerprints of certificates
+
+  files <TAG>
     Dump all the certificate-related files of this TAG
 
   check 
@@ -86,9 +89,16 @@ def main():
         elif cmd == 'list':
             for cert in sorted(certs, key=lambda x: x.name):
                 print cert.name, cert.cn, cert.get_expiration_date()
+        elif cmd == 'fp' or cmd == 'fingerprint':
+            if len(args) > 0:
+                certs = [find_cert(certs, x) for x in args]
+            for cert in certs:
+                print cert.name, cert.cn
+                print '  SHA1:', cert.get_fingerprint('sha1')
+                print '  MD5:', cert.get_fingerprint('md5')
         elif cmd == 'check':
             now = time.time()
-            warning_time = 8640000 * int(global_config.get('warning_days', 15))
+            warning_time = 86400 * int(global_config.get('warning_days', 15))
             for cert in certs:
                 exp = cert.get_expiration_date()
                 if exp and (exp - now) < warning_time: