aboutsummaryrefslogtreecommitdiff
path: root/src/or/routerparse.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2014-04-14 18:00:54 -0400
committerNick Mathewson <nickm@torproject.org>2014-04-14 18:00:54 -0400
commitbc4c966851c16cfe3c92375fba22baf45a111a67 (patch)
tree759dc8ef6375e04b5a59f484d3b0ee1977055d59 /src/or/routerparse.c
parent0820031419efcd39c2fddfa5efebbaa779982620 (diff)
parent149931571a4c5ad9ec24eb6d4306e8965a454211 (diff)
downloadtor-bc4c966851c16cfe3c92375fba22baf45a111a67.tar.gz
tor-bc4c966851c16cfe3c92375fba22baf45a111a67.zip
Merge remote-tracking branch 'origin/maint-0.2.4'
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 7bf9a4d8e7..14f800e7be 100644
--- a/src/or/routerparse.c
+++ b/src/or/routerparse.c
@@ -2687,6 +2687,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.",