aboutsummaryrefslogtreecommitdiff
path: root/scripts/irbe-cli.py
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2007-08-06 19:01:07 +0000
committerRob Austein <sra@hactrn.net>2007-08-06 19:01:07 +0000
commit775c4ccccabe1b50972cfa2b32f00d6f11f96a3c (patch)
tree7bca2625a3c5369f9b9c085f2dabe3e5df146d48 /scripts/irbe-cli.py
parent44338c5819d3ea9f1d8324ce59141e700606ef33 (diff)
Checkpoint
svn path=/scripts/irbe-cli.py; revision=830
Diffstat (limited to 'scripts/irbe-cli.py')
-rwxr-xr-xscripts/irbe-cli.py24
1 files changed, 16 insertions, 8 deletions
diff --git a/scripts/irbe-cli.py b/scripts/irbe-cli.py
index da9906ab..520b0d39 100755
--- a/scripts/irbe-cli.py
+++ b/scripts/irbe-cli.py
@@ -8,8 +8,10 @@ import glob, rpki.left_right, rpki.relaxng, getopt, sys, lxml.etree
class command(object):
+ elements = ()
+
def getopt(self, argv):
- opts, args = getopt.getopt(argv, "", [x + "=" for x in self.attributes] + [x for x in self.booleans])
+ opts, args = getopt.getopt(argv, "", [x + "=" for x in self.attributes + self.elements] + [x for x in self.booleans])
for o, a in opts:
o = o[2:]
handler = getattr(self, "handle_" + o, None)
@@ -36,23 +38,29 @@ class command(object):
class self(command, rpki.left_right.self_elt):
- def handle_extension(self, arg):
- kv = arg.split(":", 1)
- self.extensions[k] = v
+ elements = ("extension_preference",)
+
+ def handle_extension_preference(self, arg):
+ k,v = arg.split("=", 1)
+ pref = rpki.left_right.extension_preference_elt()
+ pref.name = k
+ pref.value = v
+ self.prefs.append(pref)
class bsc(command, rpki.left_right.bsc_elt):
+ elements = ('signing_cert',)
def handle_signing_cert(self, arg):
self.signing_cert.append(read_cert(arg))
class parent(command, rpki.left_right.parent_elt):
- pass
+ elements = ("peer_ta",)
class child(command, rpki.left_right.child_elt):
- pass
+ elements = ("peer_ta",)
class repository(command, rpki.left_right.repository_elt):
- pass
+ elements = ("peer_ta",)
class route_origin(command, rpki.left_right.route_origin_elt):
@@ -70,7 +78,7 @@ dispatch = dict((x.__name__, x) for x in (self, bsc, parent, child, repository,
def usage():
print "Usage:", sys.argv[0]
for k,v in dispatch.iteritems():
- print " ", k, " ".join(["--" + x + "=" for x in v.attributes]), " ".join(["--" + x for x in v.booleans])
+ print " ", k, " ".join(["--" + x + "=" for x in v.attributes + v.elements]), " ".join(["--" + x for x in v.booleans])
sys.exit(1)
rng = rpki.relaxng.RelaxNG("left-right-schema.rng")