diff options
author | Nick Mathewson <nickm@torproject.org> | 2011-03-06 13:31:06 -0500 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2011-03-06 13:41:55 -0500 |
commit | 2ce132e335d60c7ef1d01aa00db5ab4c5b7d674f (patch) | |
tree | 59d3e425b3875077b844acfada861f2b0b9020b9 /src | |
parent | 3da0837b0b114bb320a244679325d25d664752c1 (diff) | |
download | tor-2ce132e335d60c7ef1d01aa00db5ab4c5b7d674f.tar tor-2ce132e335d60c7ef1d01aa00db5ab4c5b7d674f.tar.gz |
Oops, here's the *REAL* fix for the ipv6 issue
We need to _REJECT_ descriptors with accept6/reject6 lines. If we
let them onto the network , other un-upgraded tors will crash.
Diffstat (limited to 'src')
-rw-r--r-- | src/or/routerparse.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/or/routerparse.c b/src/or/routerparse.c index aa0687d88..1faa177ed 100644 --- a/src/or/routerparse.c +++ b/src/or/routerparse.c @@ -1369,6 +1369,12 @@ router_parse_entry_from_string(const char *s, const char *end, router->has_old_dnsworkers = 1; } + if (find_opt_by_keyword(tokens, K_REJECT6) || + find_opt_by_keyword(tokens, K_ACCEPT6)) { + log_warn(LD_DIR, "Rejecting router with reject6/accept6 line: they crash " + "older Tors."); + goto err; + } exit_policy_tokens = find_all_exitpolicy(tokens); if (!smartlist_len(exit_policy_tokens)) { log_warn(LD_DIR, "No exit policy tokens in descriptor."); |