diff options
Diffstat (limited to 'monitor')
-rwxr-xr-x | monitor/josef_leveldb.py | 1 | ||||
-rw-r--r-- | monitor/josef_lib.py | 23 | ||||
-rwxr-xr-x | monitor/josef_monitor.py | 30 |
3 files changed, 27 insertions, 27 deletions
diff --git a/monitor/josef_leveldb.py b/monitor/josef_leveldb.py index 1b6dacc..49c5594 100755 --- a/monitor/josef_leveldb.py +++ b/monitor/josef_leveldb.py @@ -114,7 +114,6 @@ def db_add_certs(db_dir, data): pass except IndexError: pass - # db_close() def db_lookup_domain(db_dir, domain): diff --git a/monitor/josef_lib.py b/monitor/josef_lib.py index d78de48..0f6ac24 100644 --- a/monitor/josef_lib.py +++ b/monitor/josef_lib.py @@ -16,6 +16,7 @@ import datetime import cStringIO import zipfile import shutil +from copy import deepcopy from certkeys import publickeys from Crypto.Hash import SHA256 @@ -47,6 +48,16 @@ def get_all_roots(base_url): root_cert = base64.decodestring(accepted_cert) return certs +def check_domain(raw_entry, log=None): + orig_entry = extract_original_entry(raw_entry) + try: + cert_info = my_get_cert_info(orig_entry[0][0]) + if log: + cert_info["log"] = log[8:-1] # strip generic URL stuff + return cert_info + except IndexError: + return None + def check_domain_all(raw_entry, log=None): orig_entry = extract_original_entry(raw_entry) try: @@ -917,3 +928,15 @@ def reduce_subtree_to_root(layers): return next_merkle_layer(layers[0]) return layers[0] +def verify_subtree(sth, subtree, base_url): + try: + tmp = deepcopy(subtree) + root = base64.b64encode(reduce_subtree_to_root(tmp)[0]) + + if root == sth["sha256_root_hash"]: + return True + else: + return False + except: + return False + diff --git a/monitor/josef_monitor.py b/monitor/josef_monitor.py index 7000b87..f7017fa 100755 --- a/monitor/josef_monitor.py +++ b/monitor/josef_monitor.py @@ -275,29 +275,6 @@ class ctlog: print ERROR_STR + "Could not verify consistency for " + self.url -def verify_subtree(sth, subtree, base_url): - try: - tmp = deepcopy(subtree) - root = base64.b64encode(reduce_subtree_to_root(tmp)[0]) - - if root == sth["sha256_root_hash"]: - return True - else: - return False - except: - return False - -def check_domain(raw_entry, log=None): - orig_entry = extract_original_entry(raw_entry) - try: - cert_info = my_get_cert_info(orig_entry[0][0]) - if log: - cert_info["log"] = log[8:-1] # strip generic URL stuff - return cert_info - except IndexError: - return None - - # def verify_inclusion_all(old, new): # for url in old: # try: @@ -385,9 +362,10 @@ def setup_domain_monitoring(): for line in fp: tmp = json.loads(line) for domain in tmp: - md = monitored_domain(domain["url"]) - md.load_entries(domain["entries"]) - monitored_domains.append(md) + if domain["url"] in CONFIG.MONITORED_DOMAINS: + md = monitored_domain(domain["url"]) + md.load_entries(domain["entries"]) + monitored_domains.append(md) except IOError: pass |