diff options
author | Rob Austein <sra@hactrn.net> | 2014-04-05 22:42:12 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2014-04-05 22:42:12 +0000 |
commit | fe0bf509f528dbdc50c7182f81057c6a4e15e4bd (patch) | |
tree | 07c9a923d4a0ccdfea11c49cd284f6d5757c5eda /utils/scan_routercerts | |
parent | aa28ef54c271fbe4d52860ff8cf13cab19e2207c (diff) |
Source tree reorg, phase 1. Almost everything moved, no file contents changed.
svn path=/branches/tk685/; revision=5757
Diffstat (limited to 'utils/scan_routercerts')
-rw-r--r-- | utils/scan_routercerts/Makefile.in | 41 | ||||
-rwxr-xr-x | utils/scan_routercerts/scan_routercerts | 69 |
2 files changed, 0 insertions, 110 deletions
diff --git a/utils/scan_routercerts/Makefile.in b/utils/scan_routercerts/Makefile.in deleted file mode 100644 index 715d1325..00000000 --- a/utils/scan_routercerts/Makefile.in +++ /dev/null @@ -1,41 +0,0 @@ -# $Id$ - -NAME = scan_routercerts - -BIN = ${NAME} - -INSTALL = @INSTALL@ -m 555 - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -datarootdir = @datarootdir@ -datadir = @datadir@ -localstatedir = @localstatedir@ -sharedstatedir = @sharedstatedir@ -sysconfdir = @sysconfdir@ -bindir = @bindir@ -sbindir = @sbindir@ -libexecdir = @libexecdir@ -libdir = @libdir@ - -abs_top_srcdir = @abs_top_srcdir@ -abs_top_builddir = @abs_top_builddir@ - -all clean: - @true - -ROUTERCERT_DIR = ${abs_top_builddir}/rpkid/tests/smoketest.dir/publication - -test: all - -date -u +'now: %Y%m%d%H%M%SZ' - if test -d ${ROUTERCERT_DIR}; then ./${BIN} ; else :; fi - -install: all - if test -d ${DESTDIR}${bindir} ; then :; else ${INSTALL} -d ${DESTDIR}${bindir}; fi - ${INSTALL} ${BIN} ${DESTDIR}${bindir} - -deinstall uninstall: - rm -f ${DESTDIR}${bindir}/${BIN} - -distclean: clean - rm -f Makefile diff --git a/utils/scan_routercerts/scan_routercerts b/utils/scan_routercerts/scan_routercerts deleted file mode 100755 index 342fa272..00000000 --- a/utils/scan_routercerts/scan_routercerts +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/env python -# $Id$ -# -# Copyright (C) 2014 Dragon Research Labs ("DRL") -# -# Permission to use, copy, modify, and/or distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND DRL DISCLAIMS ALL WARRANTIES WITH -# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -# AND FITNESS. IN NO EVENT SHALL DRL BE LIABLE FOR ANY SPECIAL, DIRECT, -# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE -# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -# PERFORMANCE OF THIS SOFTWARE. - -""" -Scan rcynic validated output looking for router certificates, print -out stuff that the rpki-rtr code cares about. -""" - -# This program represents a weird temporary state, mostly to avoid -# diving into a recursive yak shaving exercise. -# -# Under the old scheme, anything used by the RP code should be either -# C code or pure Python code using just the standard libraries. This -# has gotten silly, but we haven't yet refactored the current packaged -# builds from two packages into three (adding a -libs package). -# -# So, by rights, this program should be a C monstrosity written using -# the OpenSSL C API. I started coding it that way, but it was just -# too painful for something we're probably going to rewrite as a few -# lines of Python once we refactor, but by the same token I didn't -# want to delay router certificate support until the refactoring. -# -# So this program anticipates the new scheme of things, but makes one -# concession to current reality: if it has a problem importing the -# RPKI-specific libraries, it just quietly exits as if everything were -# fine and there simply are no router certificates to report. This -# isn't the right answer in the long run, but will suffice to avoid -# further bald yaks. - -import os -import sys -import base64 - -try: - import rpki.POW - import rpki.oids -except ImportError: - sys.exit(0) - -rcynic_dir = sys.argv[1] - -for root, dirs, files in os.walk(rcynic_dir): - for fn in files: - if not fn.endswith(".cer"): - continue - x = rpki.POW.X509.derReadFile(os.path.join(root, fn)) - - if rpki.oids.id_kp_bgpsec_router not in (x.getEKU() or ()): - continue - - sys.stdout.write(base64.urlsafe_b64encode(x.getSKI()).rstrip("=")) - for min_asn, max_asn in x.getRFC3779()[0]: - for asn in xrange(min_asn, max_asn + 1): - sys.stdout.write(" %s" % asn) - sys.stdout.write(" %s\n" % base64.b64encode(x.getPublicKey().derWritePublic())) |