diff options
author | Rob Austein <sra@hactrn.net> | 2016-04-26 22:58:04 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2016-04-26 22:58:04 +0000 |
commit | 883112a925885a7dcfcbdaaa4d748e16140f8389 (patch) | |
tree | dbed843daf1de3a1884f97e6aa9c9cfdbb3fdc8c /rpki/irdb/zookeeper.py | |
parent | 89245def44ce5d2f7fbf665155b42794484c507d (diff) |
Handle non-existant root certificate correctly in rpkic extract_root_* commands. Fixes #808.
svn path=/branches/tk705/; revision=6393
Diffstat (limited to 'rpki/irdb/zookeeper.py')
-rw-r--r-- | rpki/irdb/zookeeper.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/rpki/irdb/zookeeper.py b/rpki/irdb/zookeeper.py index f0fda08a..72daa952 100644 --- a/rpki/irdb/zookeeper.py +++ b/rpki/irdb/zookeeper.py @@ -392,7 +392,11 @@ class Zookeeper(object): r_msg = self.call_rpkid(q_msg) assert len(r_msg) == 1 and r_msg[0].tag == rpki.left_right.tag_parent - cert = rpki.x509.X509(Base64 = r_msg[0].findtext(rpki.left_right.tag_rpki_root_cert)) + b64 = r_msg[0].findtext(rpki.left_right.tag_rpki_root_cert) + if not b64: + return None, () + + cert = rpki.x509.X509(Base64 = b64) caDirectory, rpkiManifest, signedObjectRepository, rpkiNotify = cert.get_SIA() sia_base = r_msg[0].get("sia_base") fn = cert.gSKI() + ".cer" |