Loading changes/17573 0 → 100644 +3 −0 Original line number Diff line number Diff line o Minor bigfixes (IPv6): - Update the limits in max_dl_per_request for IPv6 address length. Closes ticket 17573. src/or/routerlist.c +10 −3 Original line number Diff line number Diff line Loading @@ -4440,13 +4440,20 @@ static int max_dl_per_request(const or_options_t *options, int purpose) { /* Since squid does not like URLs >= 4096 bytes we limit it to 96. * 4096 - strlen(http://255.255.255.255/tor/server/d/.z) == 4058 * 4058/41 (40 for the hash and 1 for the + that separates them) => 98 * 4096 - strlen(http://ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff * /tor/server/d/.z) == 4034 * 4034/41 (40 for the hash and 1 for the + that separates them) => 98 * So use 96 because it's a nice number. * * For microdescriptors, the calculation is * 4096 - strlen(http://ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff * /tor/micro/d/.z) == 4035 * 4035/44 (43 for the hash and 1 for the - that separates them) => 91 * So use 90 because it's a nice number. */ int max = 96; if (purpose == DIR_PURPOSE_FETCH_MICRODESC) { max = 92; max = 90; } /* If we're going to tunnel our connections, we can ask for a lot more * in a request. */ Loading Loading
changes/17573 0 → 100644 +3 −0 Original line number Diff line number Diff line o Minor bigfixes (IPv6): - Update the limits in max_dl_per_request for IPv6 address length. Closes ticket 17573.
src/or/routerlist.c +10 −3 Original line number Diff line number Diff line Loading @@ -4440,13 +4440,20 @@ static int max_dl_per_request(const or_options_t *options, int purpose) { /* Since squid does not like URLs >= 4096 bytes we limit it to 96. * 4096 - strlen(http://255.255.255.255/tor/server/d/.z) == 4058 * 4058/41 (40 for the hash and 1 for the + that separates them) => 98 * 4096 - strlen(http://ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff * /tor/server/d/.z) == 4034 * 4034/41 (40 for the hash and 1 for the + that separates them) => 98 * So use 96 because it's a nice number. * * For microdescriptors, the calculation is * 4096 - strlen(http://ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff * /tor/micro/d/.z) == 4035 * 4035/44 (43 for the hash and 1 for the - that separates them) => 91 * So use 90 because it's a nice number. */ int max = 96; if (purpose == DIR_PURPOSE_FETCH_MICRODESC) { max = 92; max = 90; } /* If we're going to tunnel our connections, we can ask for a lot more * in a request. */ Loading