import os
import sys
-import sha
+try:
+ import hashlib
+except ImportError:
+ # Python-2.4.z ... gah! (or even 2.3!)
+ import sha
+ class hashlib:
+ @staticmethod
+ def new(algo):
+ if algo == 'sha1':
+ return sha.new()
+ raise ValueError, "Bad checksum type"
+
+
import xmlrpclib
from glob import glob
from time import sleep
results = []
for f in files:
hostname = os.path.basename(f).replace('.' + cm.cfg.cert_extension, '')
+ dirname = os.path.dirname(f)
digest = checksum(f)
- results.append([hostname, digest])
+ results.append([hostname, digest, dirname])
return results
def checksum(f):
- thissum = sha.new()
+ thissum = hashlib.new('sha1')
if os.path.exists(f):
fo = open(f, 'r')
data = fo.read()
for cert in local:
if cert not in peers:
cert_name = '%s.%s' % (cert[0], cm.cfg.cert_extension)
- full_path = os.path.join(cm.cfg.certroot, cert_name)
+ full_path = os.path.join(cert[2], cert_name)
fd = open(full_path)
certblob = fd.read()
fd.close()