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.
This commit is contained in:
Nick Mathewson
2011-03-06 13:31:06 -05:00
parent 3da0837b0b
commit 2ce132e335
2 changed files with 9 additions and 2 deletions
+3 -2
View File
@@ -1,3 +1,4 @@
o Major bugfixes (directory authority)
o Major bugfixes:
- Fix a crash in parsing router descriptors containing IPv6
addresses. Bugfix on 0.2.1.3-alpha.
addresses. This one crashed the directory authorities when somebody
fired up some experimental code. Bugfix on 0.2.1.3-alpha.
+6
View File
@@ -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.");