diff options
author | Rob Austein <sra@hactrn.net> | 2012-05-07 02:55:00 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2012-05-07 02:55:00 +0000 |
commit | 9f4a94e7389f77f3286aaae0c6e7bae3a15c282c (patch) | |
tree | 23db3d7c8c7c99c816486a2e00b7b20098ec67d0 /rpkid/rpki/rpkic.py | |
parent | 88e404f1e303fc9e4b4439f301f29fc66643c21e (diff) | |
parent | 636e3c590c96e0f0ab0c95a6982a5056e2cea9fd (diff) |
Merge to trunk. Testbed changes and a few bugfixes that came along
while tracking down testbed issues. See #33.
svn path=/trunk/; revision=4473
Diffstat (limited to 'rpkid/rpki/rpkic.py')
-rw-r--r-- | rpkid/rpki/rpkic.py | 32 |
1 files changed, 22 insertions, 10 deletions
diff --git a/rpkid/rpki/rpkic.py b/rpkid/rpki/rpkic.py index a94954a2..90b75bb0 100644 --- a/rpkid/rpki/rpkic.py +++ b/rpkid/rpki/rpkic.py @@ -155,8 +155,8 @@ class main(rpki.cli.Cmd): self.stdout.write(" " * 4 + line) self.stdout.write("\n") - def irdb_handle_complete(self, klass, text, line, begidx, endidx): - return [obj.handle for obj in klass.objects.all() if obj.handle and obj.handle.startswith(text)] + def irdb_handle_complete(self, manager, text, line, begidx, endidx): + return [obj.handle for obj in manager.all() if obj.handle and obj.handle.startswith(text)] def do_select_identity(self, arg): """ @@ -169,7 +169,7 @@ class main(rpki.cli.Cmd): self.zoo.reset_identity(argv[0]) def complete_select_identity(self, *args): - return self.irdb_handle_complete(rpki.irdb.ResourceHolderCA, *args) + return self.irdb_handle_complete(rpki.irdb.ResourceHolderCA.objects, *args) def do_initialize(self, arg): @@ -249,7 +249,7 @@ class main(rpki.cli.Cmd): print "No such child \"%s\"" % arg def complete_delete_child(self, *args): - return self.irdb_handle_complete(rpki.irdb.Child, *args) + return self.irdb_handle_complete(self.zoo.resource_ca.children, *args) def do_configure_parent(self, arg): @@ -296,7 +296,19 @@ class main(rpki.cli.Cmd): print "No such parent \"%s\"" % arg def complete_delete_parent(self, *args): - return self.irdb_handle_complete(rpki.irdb.Parent, *args) + return self.irdb_handle_complete(self.zoo.resource_ca.parents, *args) + + + def do_delete_rootd(self, arg): + """ + Delete rootd associated with this RPKI entity. + """ + + try: + self.zoo.delete_rootd() + self.zoo.synchronize() + except rpki.irdb.Rootd.DoesNotExist: + print "No associated rootd" def do_configure_publication_client(self, arg): @@ -339,7 +351,7 @@ class main(rpki.cli.Cmd): print "No such client \"%s\"" % arg def complete_delete_publication_client(self, *args): - return self.irdb_handle_complete(rpki.irdb.Client, *args) + return self.irdb_handle_complete(self.zoo.resource_ca.clients, *args) def do_configure_repository(self, arg): @@ -380,7 +392,7 @@ class main(rpki.cli.Cmd): print "No such repository \"%s\"" % arg def complete_delete_repository(self, *args): - return self.irdb_handle_complete(rpki.irdb.Repository, *args) + return self.irdb_handle_complete(self.zoo.resource_ca.repositories, *args) def do_delete_self(self, arg): @@ -411,7 +423,7 @@ class main(rpki.cli.Cmd): self.zoo.synchronize(self.zoo.handle) def complete_renew_child(self, *args): - return self.irdb_handle_complete(rpki.irdb.Child, *args) + return self.irdb_handle_complete(self.zoo.resource_ca.children, *args) def do_renew_all_children(self, arg): @@ -443,7 +455,7 @@ class main(rpki.cli.Cmd): if len(argv) != 1: raise BadCommandSyntax("Need to specify prefixes.csv filename") - self.zoo.load_prefixes(argv[0]) + self.zoo.load_prefixes(argv[0], True) self.zoo.synchronize(self.zoo.handle) @@ -477,7 +489,7 @@ class main(rpki.cli.Cmd): if len(argv) != 1: raise BadCommandSyntax("Need to specify asns.csv filename") - self.zoo.load_asns(argv[0]) + self.zoo.load_asns(argv[0], True) self.zoo.synchronize(self.zoo.handle) |