aboutsummaryrefslogtreecommitdiff
path: root/rpkid/rpki/x509.py
diff options
context:
space:
mode:
Diffstat (limited to 'rpkid/rpki/x509.py')
-rw-r--r--rpkid/rpki/x509.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/rpkid/rpki/x509.py b/rpkid/rpki/x509.py
index 0fbcf073..9444ae53 100644
--- a/rpkid/rpki/x509.py
+++ b/rpkid/rpki/x509.py
@@ -46,7 +46,7 @@ PERFORMANCE OF THIS SOFTWARE.
import rpki.POW, rpki.POW.pkix, base64, lxml.etree, os, subprocess, sys
import email.mime.application, email.utils, mailbox, time
import rpki.exceptions, rpki.resource_set, rpki.oids, rpki.sundial
-import rpki.manifest, rpki.roa, rpki.log, rpki.async
+import rpki.manifest, rpki.roa, rpki.log, rpki.async, rpki.ghostbuster
def base64_with_linebreaks(der):
"""
@@ -1118,6 +1118,21 @@ class ROA(DER_CMS_object):
rpki.log.debug("ROA inner content: %r" % (r.get(),))
raise
+class Ghostbuster(DER_CMS_object):
+ """
+ Class to hold a signed Ghostbuster record.
+ """
+
+ content_class = rpki.ghostbuster.Ghostbuster
+
+ @classmethod
+ def build(cls, vcard, keypair, certs):
+ self = cls()
+ gbr = content_class(vcard)
+ self.set_content(gbr)
+ self.sign(keypair, certs)
+ return self
+
class DeadDrop(object):
"""
Dead-drop utility for storing copies of CMS messages for debugging or