diff --git a/warden_ra/warden_ra.py b/warden_ra/warden_ra.py index 8d629f1edc18ed6e4588b73d8fea7f48522c57cc..99fa15e58735c8e8596f5d0d85ef945437e58d7a 100755 --- a/warden_ra/warden_ra.py +++ b/warden_ra/warden_ra.py @@ -272,6 +272,14 @@ class EjbcaRegistry(OpenSSLRegistry): return self.ejbca.get_version() +def relaxed_ord(c): + # Compatibility wrapper for py2/py3 + try: + return ord(c) + except TypeError: + return c + + def format_cert(cert): return ( "Subject: %s\n" @@ -283,7 +291,7 @@ def format_cert(cert): cert.get_subject().as_text(), cert.get_not_before().get_datetime().isoformat(), cert.get_not_after().get_datetime().isoformat(), - ":".join(["%02x" % ord(c) for c in struct.pack('!Q', cert.get_serial_number())]), + ":".join(["%02x" % relaxed_ord(c) for c in struct.pack('!Q', cert.get_serial_number())]), cert.get_fingerprint("md5"), cert.get_fingerprint("sha1"), cert.get_issuer().as_text()