aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2009-07-27 18:47:06 +0000
committerRob Austein <sra@hactrn.net>2009-07-27 18:47:06 +0000
commit70b1c1d7ce96c392c186e8b5db84f97a604de5c9 (patch)
treec5f94b5d96059b7010cdf1ac9ec0daa53a07c981
parentda4d694d45ca1d5540f8bb1b53bdb6f687c034e7 (diff)
CSV stuff wants prefixes, not ranges.
svn path=/myrpki/arin-to-csv.py; revision=2669
-rw-r--r--myrpki/arin-to-csv.py22
1 files changed, 15 insertions, 7 deletions
diff --git a/myrpki/arin-to-csv.py b/myrpki/arin-to-csv.py
index 7307c767..363d2ab6 100644
--- a/myrpki/arin-to-csv.py
+++ b/myrpki/arin-to-csv.py
@@ -23,7 +23,7 @@ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
"""
-import gzip, csv, myrpki
+import gzip, csv, myrpki, rpki.resource_set
class Handle(object):
@@ -38,9 +38,10 @@ class Handle(object):
def check(self):
for tag in self.want_tags:
if not hasattr(self, tag):
- return
+ return False
if self.debug:
print repr(self)
+ return True
class ASHandle(Handle):
@@ -51,19 +52,24 @@ class ASHandle(Handle):
self.OrgID, self.ASHandle, self.ASNumber)
def finish(self, csvf):
- self.check()
- csvf.asn.writerow((self.OrgID, self.ASNumber))
+ if self.check():
+ csvf.asn.writerow((self.OrgID, self.ASNumber))
class NetHandle(Handle):
NetType = None
+ range_type = rpki.resource_set.ipv4
want_tags = ("NetHandle", "NetRange", "NetType", "OrgID")
+ def set(self, tag, val):
+ Handle.set(self, tag, val)
+ if tag == "NetRange":
+ self.Prefix = self.range_type(self.NetRange)
+
def finish(self, csvf):
- if self.NetType in ("allocation", "assignment"):
- self.check()
- csvf.prefix.writerow((self.OrgID, self.NetRange))
+ if self.NetType in ("allocation", "assignment") and self.check():
+ csvf.prefix.writerow((self.OrgID, self.Prefix))
def __repr__(self):
return "<%s %s.%s %s %s>" % (self.__class__.__name__,
@@ -71,6 +77,8 @@ class NetHandle(Handle):
self.NetType, self.NetRange)
class V6NetHandle(NetHandle):
+ range_type = rpki.resource_set.ipv6
+
want_tags = ("V6NetHandle", "NetRange", "NetType", "OrgID")
def __repr__(self):