Loading changes/all_descs 0 → 100644 +4 −0 Changes for changes/all_descs: 4 added lines, 0 removed lines. Original line number Diff line number Diff line o Major bugfixes (bridge authority) - Do not allow encrypte requests for "all" bridges to return all bridges. changes/ipv6_crash +3 −2 Changes for changes/ipv6_crash: 3 added lines, 2 removed lines. Original line number Diff line number Diff line 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. src/or/dirserv.c +2 −0 Changes for src/or/dirserv.c: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -2970,6 +2970,8 @@ dirserv_get_routerdesc_fingerprints(smartlist_t *fps_out, const char *key, SMARTLIST_FOREACH(rl->routers, routerinfo_t *, r, smartlist_add(fps_out, tor_memdup(r->cache_info.identity_digest, DIGEST_LEN))); /* Treat "all" requests as if they were unencrypted */ for_unencrypted_conn = 1; } else if (!strcmp(key, "authority")) { routerinfo_t *ri = router_get_my_routerinfo(); if (ri) Loading src/or/routerparse.c +8 −0 Changes for src/or/routerparse.c: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -267,6 +267,8 @@ typedef struct token_rule_t { static token_rule_t routerdesc_token_table[] = { T0N("reject", K_REJECT, ARGS, NO_OBJ ), T0N("accept", K_ACCEPT, ARGS, NO_OBJ ), T0N("reject6", K_REJECT6, ARGS, NO_OBJ ), T0N("accept6", K_ACCEPT6, ARGS, NO_OBJ ), T1_START( "router", K_ROUTER, GE(5), NO_OBJ ), T1( "signing-key", K_SIGNING_KEY, NO_ARGS, NEED_KEY_1024 ), T1( "onion-key", K_ONION_KEY, NO_ARGS, NEED_KEY_1024 ), Loading Loading @@ -1503,6 +1505,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."); Loading Loading
changes/all_descs 0 → 100644 +4 −0 Changes for changes/all_descs: 4 added lines, 0 removed lines. Original line number Diff line number Diff line o Major bugfixes (bridge authority) - Do not allow encrypte requests for "all" bridges to return all bridges.
changes/ipv6_crash +3 −2 Changes for changes/ipv6_crash: 3 added lines, 2 removed lines. Original line number Diff line number Diff line 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.
src/or/dirserv.c +2 −0 Changes for src/or/dirserv.c: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -2970,6 +2970,8 @@ dirserv_get_routerdesc_fingerprints(smartlist_t *fps_out, const char *key, SMARTLIST_FOREACH(rl->routers, routerinfo_t *, r, smartlist_add(fps_out, tor_memdup(r->cache_info.identity_digest, DIGEST_LEN))); /* Treat "all" requests as if they were unencrypted */ for_unencrypted_conn = 1; } else if (!strcmp(key, "authority")) { routerinfo_t *ri = router_get_my_routerinfo(); if (ri) Loading
src/or/routerparse.c +8 −0 Changes for src/or/routerparse.c: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -267,6 +267,8 @@ typedef struct token_rule_t { static token_rule_t routerdesc_token_table[] = { T0N("reject", K_REJECT, ARGS, NO_OBJ ), T0N("accept", K_ACCEPT, ARGS, NO_OBJ ), T0N("reject6", K_REJECT6, ARGS, NO_OBJ ), T0N("accept6", K_ACCEPT6, ARGS, NO_OBJ ), T1_START( "router", K_ROUTER, GE(5), NO_OBJ ), T1( "signing-key", K_SIGNING_KEY, NO_ARGS, NEED_KEY_1024 ), T1( "onion-key", K_ONION_KEY, NO_ARGS, NEED_KEY_1024 ), Loading Loading @@ -1503,6 +1505,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."); Loading