summaryrefslogtreecommitdiff
path: root/monitor/josef_monitor.py
diff options
context:
space:
mode:
authorJosef Gustafsson <josef.gson@gmail.com>2015-09-30 12:59:46 +0200
committerJosef Gustafsson <josef.gson@gmail.com>2015-09-30 12:59:46 +0200
commitbeaf6e3b91ebfc3a7134398c1607a679434859f7 (patch)
tree483ad49931867e9763579ec38434b29cb3f5bc78 /monitor/josef_monitor.py
parent8e7f6d4953c149c1a71445e1f62f60108c788a6a (diff)
bugfix in consistency validation
Diffstat (limited to 'monitor/josef_monitor.py')
-rwxr-xr-xmonitor/josef_monitor.py27
1 files changed, 26 insertions, 1 deletions
diff --git a/monitor/josef_monitor.py b/monitor/josef_monitor.py
index 1866a63..d5e4254 100755
--- a/monitor/josef_monitor.py
+++ b/monitor/josef_monitor.py
@@ -81,7 +81,9 @@ class ctlog:
+ str(self.entries -1 ) + " of " + str(self.sth["tree_size"]-1))
if self.entries != start_size:
- if not verify_subtree(self.sth, self.subtree, self.url):
+ if verify_subtree(self.sth, self.subtree, self.url):
+ pass
+ else:
self.log(ERROR_STR + "Failed to verify newly built subtree!")
def fetch_and_increment_subtree(self, first, last, url, subtree =[[]]):
@@ -263,6 +265,29 @@ 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: