diff options
author | Nick Mathewson <nickm@torproject.org> | 2014-04-14 18:00:54 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2014-04-14 18:00:54 -0400 |
commit | bc4c966851c16cfe3c92375fba22baf45a111a67 (patch) | |
tree | 759dc8ef6375e04b5a59f484d3b0ee1977055d59 /src/or/routerparse.c | |
parent | 0820031419efcd39c2fddfa5efebbaa779982620 (diff) | |
parent | 149931571a4c5ad9ec24eb6d4306e8965a454211 (diff) | |
download | tor-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.c | 8 |
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.", |