aboutsummaryrefslogtreecommitdiff
path: root/rpkid/rpki/gctx.py
diff options
context:
space:
mode:
Diffstat (limited to 'rpkid/rpki/gctx.py')
-rw-r--r--rpkid/rpki/gctx.py40
1 files changed, 24 insertions, 16 deletions
diff --git a/rpkid/rpki/gctx.py b/rpkid/rpki/gctx.py
index aad7643a..139270f8 100644
--- a/rpkid/rpki/gctx.py
+++ b/rpkid/rpki/gctx.py
@@ -36,15 +36,23 @@ class global_context(object):
passwd = cfg.get("sql-password"))
self.cur = self.db.cursor()
- self.cms_ta_irdb = rpki.x509.X509(Auto_file = cfg.get("cms-ta-irdb"))
- self.cms_ta_irbe = rpki.x509.X509(Auto_file = cfg.get("cms-ta-irbe"))
- self.cms_key = rpki.x509.RSA(Auto_file = cfg.get("cms-key"))
- self.cms_certs = rpki.x509.X509_chain(Auto_files = cfg.multiget("cms-cert"))
+ if False:
+ self.cms_ta_irdb = rpki.x509.X509(Auto_file = cfg.get("cms-ta-irdb"))
+ self.cms_ta_irbe = rpki.x509.X509(Auto_file = cfg.get("cms-ta-irbe"))
+ self.cms_key = rpki.x509.RSA(Auto_file = cfg.get("cms-key"))
+ self.cms_certs = rpki.x509.X509_chain(Auto_files = cfg.multiget("cms-cert"))
- self.https_ta_irdb = rpki.x509.X509(Auto_file = cfg.get("https-ta-irdb"))
- self.https_ta_irbe = rpki.x509.X509(Auto_file = cfg.get("https-ta-irbe"))
- self.https_key = rpki.x509.RSA(Auto_file = cfg.get("https-key"))
- self.https_certs = rpki.x509.X509_chain(Auto_files = cfg.multiget("https-cert"))
+ self.https_ta_irdb = rpki.x509.X509(Auto_file = cfg.get("https-ta-irdb"))
+ self.https_ta_irbe = rpki.x509.X509(Auto_file = cfg.get("https-ta-irbe"))
+ self.https_key = rpki.x509.RSA(Auto_file = cfg.get("https-key"))
+ self.https_certs = rpki.x509.X509_chain(Auto_files = cfg.multiget("https-cert"))
+
+ else:
+
+ self.ta_irdb = rpki.x509.X509(Auto_file = cfg.get("ta-irdb"))
+ self.ta_irbe = rpki.x509.X509(Auto_file = cfg.get("ta-irbe"))
+ self.ee_key = rpki.x509.RSA(Auto_file = cfg.get("ee-key"))
+ self.cert_chain = rpki.x509.X509_chain(Auto_files = cfg.multiget("cert-chain"))
self.irdb_url = cfg.get("irdb-url")
@@ -74,14 +82,14 @@ class global_context(object):
q_msg[0].type = "query"
q_msg[0].self_id = self_id
q_msg[0].child_id = child_id
- q_cms = rpki.left_right.cms_msg.wrap(q_msg, self.cms_key, self.cms_certs)
+ q_cms = rpki.left_right.cms_msg.wrap(q_msg, self.ee_key, self.cert_chain)
der = rpki.https.client(
- client_key = self.https_key,
- client_certs = self.https_certs,
- server_ta = self.https_ta_irdb,
+ client_key = self.ee_key,
+ client_certs = self.cert_chain,
+ server_ta = self.ta_irdb,
url = self.irdb_url,
msg = q_cms)
- r_msg = rpki.left_right.cms_msg.unwrap(der, self.cms_ta_irdb)
+ r_msg = rpki.left_right.cms_msg.unwrap(der, self.ta_irdb)
if len(r_msg) == 0 or not isinstance(r_msg[0], rpki.left_right.list_resources_elt) or r_msg[0].type != "reply":
raise rpki.exceptions.BadIRDBReply, "Unexpected response to IRDB query: %s" % lxml.etree.tostring(r_msg.toXML(), pretty_print = True, encoding = "us-ascii")
return rpki.resource_set.resource_bag(
@@ -112,9 +120,9 @@ class global_context(object):
"""Process one left-right PDU."""
rpki.log.trace()
try:
- q_msg = rpki.left_right.cms_msg.unwrap(query, self.cms_ta_irbe)
+ q_msg = rpki.left_right.cms_msg.unwrap(query, self.ta_irbe)
r_msg = q_msg.serve_top_level(self)
- reply = rpki.left_right.cms_msg.wrap(r_msg, self.cms_key, self.cms_certs)
+ reply = rpki.left_right.cms_msg.wrap(r_msg, self.ee_key, self.cert_chain)
self.sql_sweep()
return 200, reply
except Exception, data:
@@ -178,7 +186,7 @@ class global_context(object):
children = rpki.left_right.child_elt.sql_fetch_all(self)
certs = [c.peer_biz_cert for c in children if c.peer_biz_cert is not None] + \
[c.peer_biz_glue for c in children if c.peer_biz_glue is not None] + \
- [ self.https_ta_irbe ]
+ [ self.ta_irbe ]
for x in certs:
if rpki.https.debug_tls_certs:
rpki.log.debug("HTTPS dynamic trust anchor %s" % x.getSubject())