diff options
author | Rob Austein <sra@hactrn.net> | 2010-09-14 15:21:57 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2010-09-14 15:21:57 +0000 |
commit | a6cc3ec685e14c67baca2578aeab3eef70902096 (patch) | |
tree | ac66a2b45117b287fdb46845aa472476f3c7242b /rpkid/rpki/rpki_engine.py | |
parent | 444389ab7c099b5f2dc663bc10d2f9992bd4afeb (diff) |
Don't explode when cleaning up attributes that never existed
svn path=/rpkid/rpki/rpki_engine.py; revision=3446
Diffstat (limited to 'rpkid/rpki/rpki_engine.py')
-rw-r--r-- | rpkid/rpki/rpki_engine.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/rpkid/rpki/rpki_engine.py b/rpkid/rpki/rpki_engine.py index f3326939..46523814 100644 --- a/rpkid/rpki/rpki_engine.py +++ b/rpkid/rpki/rpki_engine.py @@ -663,10 +663,18 @@ class ca_detail_obj(rpki.sql.sql_persistent): handler = False if allow_failure else None) for roa in self.roas(): roa.revoke(publisher = publisher, allow_failure = allow_failure) - if self.latest_manifest is not None: + try: + latest_manifest = self.latest_manifest + except AttributeError: + latest_manifest = None + if latest_manifest is not None: publisher.withdraw(cls = rpki.publication.manifest_elt, uri = self.manifest_uri(ca), obj = self.latest_manifest, repository = repository, handler = False if allow_failure else None) - if self.latest_crl is not None: + try: + latest_crl = self.latest_crl + except AttributeError: + latest_crl = None + if latest_crl is not None: publisher.withdraw(cls = rpki.publication.crl_elt, uri = self.crl_uri(ca), obj = self.latest_crl, repository = repository, handler = False if allow_failure else None) for cert in self.child_certs() + self.revoked_certs(): |