diff options
author | Rob Austein <sra@hactrn.net> | 2009-07-12 20:16:17 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2009-07-12 20:16:17 +0000 |
commit | 92d42270121e35bdfe589f788e7cb1bc0f22ce3d (patch) | |
tree | 6dfadc8e9e008a287acaf93fbcd6ab635f1db77e | |
parent | 2b68c6f5cd1c6c0fac27fad4942ba82130370713 (diff) |
URL cleanup
svn path=/myrpki/myirbe.py; revision=2609
-rw-r--r-- | myrpki/myirbe.py | 8 | ||||
-rw-r--r-- | myrpki/yaml-to-myrpki.py | 27 |
2 files changed, 22 insertions, 13 deletions
diff --git a/myrpki/myirbe.py b/myrpki/myirbe.py index 4c8929a1..076c02b7 100644 --- a/myrpki/myirbe.py +++ b/myrpki/myirbe.py @@ -120,7 +120,7 @@ rpkid_base = cfg.get("rpkid_base") # Nasty regexp for parsing rpkid's up-down service URLs -updown_regexp = re.compile(re.escape(rpkid_base) + "/up-down/([-A-Z0-9_]+)/([-A-Z0-9_]+)$", re.I) +updown_regexp = re.compile(re.escape(rpkid_base) + "up-down/([-A-Z0-9_]+)/([-A-Z0-9_]+)$", re.I) # Wrappers to simplify calling rpkid and pubd @@ -130,7 +130,7 @@ call_rpkid = rpki.async.sync_wrapper(caller( client_cert = rpki.x509.X509(PEM_file = bpki_rpkid.dir + "/irbe_cli.cer"), server_ta = rpki.x509.X509(PEM_file = bpki_rpkid.cer), server_cert = rpki.x509.X509(PEM_file = bpki_rpkid.dir + "/rpkid.cer"), - url = rpkid_base + "/left-right")) + url = rpkid_base + "left-right")) call_pubd = rpki.async.sync_wrapper(caller( proto = rpki.publication, @@ -138,7 +138,7 @@ call_pubd = rpki.async.sync_wrapper(caller( client_cert = rpki.x509.X509(PEM_file = bpki_pubd.dir + "/irbe_cli.cer"), server_ta = rpki.x509.X509(PEM_file = bpki_pubd.cer), server_cert = rpki.x509.X509(PEM_file = bpki_pubd.dir + "/pubd.cer"), - url = pubd_base + "/control")) + url = pubd_base + "control")) # Make sure that pubd's BPKI CRL is up to date. @@ -318,7 +318,7 @@ for xmlfile in xmlfiles: if repository_cert: repository_pdu = repository_pdus.pop(repository_handle, None) - repository_uri = pubd_base + "/client/" + handle + repository_uri = pubd_base + "client/" + handle if (repository_pdu is None or repository_pdu.bsc_handle != bsc_handle or diff --git a/myrpki/yaml-to-myrpki.py b/myrpki/yaml-to-myrpki.py index 769ac94f..400e2c06 100644 --- a/myrpki/yaml-to-myrpki.py +++ b/myrpki/yaml-to-myrpki.py @@ -50,6 +50,8 @@ def allocate_port(): base_port += 1 return p +rootd_port = allocate_port() + class roa_request(object): def __init__(self, asn, ipv4, ipv6): @@ -112,6 +114,10 @@ class allocation(object): crl_interval = None regen_margin = None + rsync_port = 0 + rpkid_port = 0 + pubd_port = 0 + def __init__(self, yaml, db, parent = None): db.append(self) self.name = yaml["name"] @@ -144,10 +150,6 @@ class allocation(object): self.rsync_port = allocate_port() self.rpkid_port = allocate_port() self.pubd_port = allocate_port() - else: - self.rsync_port = 0 - self.rpkid_port = 0 - self.pubd_port = 0 def closure(self): resources = self.base @@ -181,6 +183,13 @@ class allocation(object): def outfile(self, filename): return open(self.path(filename), "w") + def up_down_url(self): + if self.is_root(): + return "https://localhost:%d/" % rootd_port + else: + parent_port = self.parent.hosted_by.rpkid_port if self.parent.is_hosted() else self.parent.rpkid_port + return "https://localhost:%d/up-down/%s/%s" % (parent_port, self.parent.name, self.name) + def dump_asns(self, fn): f = self.outfile(fn) for k in self.kids: @@ -195,7 +204,7 @@ class allocation(object): def dump_parents(self, fn): f = self.outfile(fn) if not self.is_root(): - f.write("%s\t%s\t%s\n" % (self.parent.name, "https://some.where.example/", self.parent.path("bpki.myrpki/ca.cer"))) + f.write("%s\t%s\t%s\n" % (self.parent.name, self.up_down_url(), self.parent.path("bpki.myrpki/ca.cer"))) def dump_prefixes(self, fn): f = self.outfile(fn) @@ -212,10 +221,10 @@ class allocation(object): def dump_conf(self, fn): replacements = { - ("myrpki", "handle") : self.name, - ("myirbe", "rsync_base") : "rsync://localhost:%d/" % self.rsync_port, - ("myirbe", "pubd_base") : "https://localhost:%d" % self.pubd_port, - ("myirbe", "rpkid_base") : "https://localhost:%d" % self.rpkid_port } + ("myrpki", "handle") : self.name, + ("myirbe", "rsync_base") : "rsync://localhost:%d/" % self.rsync_port, + ("myirbe", "pubd_base") : "https://localhost:%d/" % self.pubd_port, + ("myirbe", "rpkid_base") : "https://localhost:%d/" % self.rpkid_port } f = self.outfile(fn) f.write("# Automatically generated, do not edit\n") |