summaryrefslogtreecommitdiff
path: root/tools/comparecert.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/comparecert.py')
-rwxr-xr-xtools/comparecert.py78
1 files changed, 0 insertions, 78 deletions
diff --git a/tools/comparecert.py b/tools/comparecert.py
deleted file mode 100755
index 81893f7..0000000
--- a/tools/comparecert.py
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/usr/bin/env python
-
-# Copyright (c) 2014, NORDUnet A/S.
-# See LICENSE for licensing information.
-
-import argparse
-import urllib2
-import urllib
-import json
-import base64
-import sys
-import struct
-import hashlib
-import itertools
-from certtools import *
-from certtools import *
-from precerttools import *
-import os
-import signal
-import select
-import zipfile
-
-def readfile(filename):
- contents = open(filename).read()
- certchain = get_certs_from_string(contents)
- precerts = get_precerts_from_string(contents)
- return (certchain, precerts)
-
-def testcerts(template, test):
- (certchain1, precerts1) = template
- (certchain2, precerts2) = test
-
- if precerts1 != precerts2:
- return (False, "precerts are different")
-
- if certchain1 == certchain2:
- return (True, "")
-
- if len(certchain2) == len(certchain1) + 1:
- if certchain2[:-1] != certchain1:
- return (False, "certchains are different")
- last_issuer = get_cert_info(certchain1[-1])["issuer"]
- root_subject = get_cert_info(certchain2[-1])["subject"]
- if last_issuer == root_subject:
- return (True, "fetched chain has an appended root cert")
- else:
- return (False, "fetched chain has an extra entry")
-
- return (False, "certchains are different")
-
-parser = argparse.ArgumentParser(description='')
-parser.add_argument('templates', help="Test templates, separated with colon")
-parser.add_argument('test', help="Files to test, separated with colon")
-args = parser.parse_args()
-
-templates = [readfile(filename) for filename in args.templates.split(":")]
-
-tests = [readfile(filename) for filename in args.test.split(":")]
-
-
-for test in tests:
- found = False
- errors = []
- for template in templates:
- (result, message) = testcerts(template, test)
- if result:
- print message
- found = True
- templates.remove(template)
- break
- else:
- errors.append(message)
- if not found:
- print "Matching template not found for test"
- for error in errors:
- print error
- sys.exit(1)
-sys.exit(0)