aboutsummaryrefslogtreecommitdiff
path: root/rpkid/rpki/rcynic.py
diff options
context:
space:
mode:
authorMichael Elkins <melkins@tislabs.com>2011-06-14 19:02:25 +0000
committerMichael Elkins <melkins@tislabs.com>2011-06-14 19:02:25 +0000
commit9bfb5b58e179dc995606c7c9fcc534dd06b48a78 (patch)
tree65eae00f0de4e741013f1b64b5bf71c5d158530e /rpkid/rpki/rcynic.py
parentf9c0ff28cd7b84ec6bc17ed358a252adefd79695 (diff)
extrude validation status lables from the rcynic XML file and shove into django db
color code validation status in signed object detail views to make problems stand out svn path=/rpkid/portal-gui/scripts/rpkigui-rcynic.py; revision=3873
Diffstat (limited to 'rpkid/rpki/rcynic.py')
-rw-r--r--rpkid/rpki/rcynic.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/rpkid/rpki/rcynic.py b/rpkid/rpki/rcynic.py
index 2f6ffe12..0d258542 100644
--- a/rpkid/rpki/rcynic.py
+++ b/rpkid/rpki/rcynic.py
@@ -238,6 +238,16 @@ class rcynic_xml_iterator(object):
if ext in file_name_classes:
yield file_name_classes[ext](filename = filename, uri = uri, ok = ok, status = status, timestamp = timestamp)
+def label_iterator(xml_file):
+ """
+ Returns an iterator which contains all defined labels from an rcynic XML
+ output file. Each item is a tuple of the form
+ (label, kind, description).
+ """
+
+ for label in ElementTree(file=xml_file).find("labels"):
+ yield label.tag, label.get("kind"), label.text.strip()
+
if __name__ == "__main__":
if False:
for i in rcynic_file_iterator("/u/sra/rpki/subvert-rpki.hactrn.net/rcynic/rcynic-data"):