summaryrefslogtreecommitdiff
path: root/src/or/routerparse.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2014-04-14 17:59:01 -0400
committerNick Mathewson <nickm@torproject.org>2014-04-14 17:59:01 -0400
commit75b4975d7722d9497847fdab8dcfb2ac10f58fdb (patch)
tree56798e83f2c5b997f71e9eadbfdf3465b0e48e25 /src/or/routerparse.c
parent2658e70d16eccfdd4b37d23a8399fce492d0eea1 (diff)
parent09ed8a5dbb5216caae0055c1608abbc8c76412c9 (diff)
downloadtor-75b4975d7722d9497847fdab8dcfb2ac10f58fdb.tar.gz
tor-75b4975d7722d9497847fdab8dcfb2ac10f58fdb.zip
Merge branch 'bug11464_023_squashed' into maint-0.2.3
Diffstat (limited to 'src/or/routerparse.c')
-rw-r--r--src/or/routerparse.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/or/routerparse.c b/src/or/routerparse.c
index 299d07d376..97e0bc8c85 100644
--- a/src/or/routerparse.c
+++ b/src/or/routerparse.c
@@ -3053,6 +3053,14 @@ networkstatus_parse_vote_from_string(const char *s, const char **eos_out,
log_warn(LD_DIR,"Mismatch between identities in certificate and vote");
goto err;
}
+ if (ns->type != NS_TYPE_CONSENSUS) {
+ if (authority_cert_is_blacklisted(ns->cert)) {
+ log_warn(LD_DIR, "Rejecting vote signature made with blacklisted "
+ "signing key %s",
+ hex_str(ns->cert->signing_key_digest, DIGEST_LEN));
+ goto err;
+ }
+ }
voter->address = tor_strdup(tok->args[2]);
if (!tor_inet_aton(tok->args[3], &in)) {
log_warn(LD_DIR, "Error decoding IP address %s in network-status.",