Tor issueshttps://gitlab.torproject.org/tpo/core/tor/-/issues2020-06-27T13:55:33Zhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23588Write fascist_firewall_choose_address_ls() and use it in hs_get_extend_info_f...2020-06-27T13:55:33ZteorWrite fascist_firewall_choose_address_ls() and use it in hs_get_extend_info_from_lspecs()Currently, the address choice logic is:
* if we have an IPv6 address and can reach the ls IPv6 address, and prefer IPv6, use it
* if we have an IPv4 address and can reach the ls IPv4 address, use it
But it needs to be:
* if we have both...Currently, the address choice logic is:
* if we have an IPv6 address and can reach the ls IPv6 address, and prefer IPv6, use it
* if we have an IPv4 address and can reach the ls IPv4 address, use it
But it needs to be:
* if we have both addresses and can reach both, then use whatever we prefer
* if we have one address and can reach it, use it
This doesn't matter until clients put IPv6 addresses in the link specifier.Tor: 0.4.1.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23589Stop assuming that every extend_info contains an IPv4 address in get_lspecs_f...2020-06-27T13:55:32ZteorStop assuming that every extend_info contains an IPv4 address in get_lspecs_from_extend_info()addr can be an IPv6 addressaddr can be an IPv6 addressTor: 0.3.2.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23818Make v2 and v3 single onion services retry all failed intro and rend connecti...2020-06-27T13:55:20ZteorMake v2 and v3 single onion services retry all failed intro and rend connections with a 3-hop pathThis makes a single onion service connect via an entry that it can reach when connections fail.This makes a single onion service connect via an entry that it can reach when connections fail.Tor: 0.4.0.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23820Make sure v3 single onion services and v3 onion service clients only send IPv...2020-06-27T13:55:20ZteorMake sure v3 single onion services and v3 onion service clients only send IPv4 addressesThis fixes the bug warning in legacy/trac#23493, and allows our users to migrate to IPv4 v3 single onion services.This fixes the bug warning in legacy/trac#23493, and allows our users to migrate to IPv4 v3 single onion services.Tor: 0.3.2.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23826Authorities: Put Relay IPv6 addresses in the microdesc consensus2020-06-27T13:55:19ZteorAuthorities: Put Relay IPv6 addresses in the microdesc consensusAuthority Implementation for legacy/trac#20916Authority Implementation for legacy/trac#20916Tor: 0.3.3.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23827Clients/Relays: Use IPv6 Addresses from microdesc consensus2020-06-27T13:55:19ZteorClients/Relays: Use IPv6 Addresses from microdesc consensusClient/Relay Implementation for legacy/trac#20916.
We need to use the IPv6 addresses from consensuses with versions that implement legacy/trac#23826, and ignore microdesc IPv6 addresses.Client/Relay Implementation for legacy/trac#20916.
We need to use the IPv6 addresses from consensuses with versions that implement legacy/trac#23826, and ignore microdesc IPv6 addresses.Tor: 0.3.3.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23828Authorities: Remove IPv6 addresses from microdescriptors2020-06-27T13:55:19ZteorAuthorities: Remove IPv6 addresses from microdescriptorsWhen legacy/trac#23826 is locked in, we should remove IPv6 addresses from microdescs.When legacy/trac#23826 is locked in, we should remove IPv6 addresses from microdescs.Tor: 0.3.3.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/23898tor-spec: move IPv6 addresses from microdescs to microdesc consensus2020-06-27T13:55:15Zteortor-spec: move IPv6 addresses from microdescs to microdesc consensusMy torspec branch bug20916 documents the changes in legacy/trac#20916 and children. And it fixes legacy/trac#13043.My torspec branch bug20916 documents the changes in legacy/trac#20916 and children. And it fixes legacy/trac#13043.Tor: 0.3.3.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24006IPv6-only Tor2web has never actually connected to rend points over IPv62020-06-27T13:55:12ZteorIPv6-only Tor2web has never actually connected to rend points over IPv6This code should pass 1 to extend_info_from_node() when running Tor2web, and it should fall back to a 3-hop path if the node is NULL:
```
const node_t *node =
choose_good_exit_server(circ->base_.purpose, state->need_uptime,
...This code should pass 1 to extend_info_from_node() when running Tor2web, and it should fall back to a 3-hop path if the node is NULL:
```
const node_t *node =
choose_good_exit_server(circ->base_.purpose, state->need_uptime,
state->need_capacity, state->is_internal,
is_hs_v3_rp_circuit);
if (!node) {
log_warn(LD_CIRC,"Failed to choose an exit server");
return -1;
}
exit_ei = extend_info_from_node(node, 0);
if (BUG(exit_ei == NULL))
return -1;
```
I don't think we'll fix this, but I'm logging it for the record.Tor: unspecifiedhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24109Test IPv6-only clients using microdescriptors in make-test-network-all2020-06-27T13:55:06ZteorTest IPv6-only clients using microdescriptors in make-test-network-allNow that legacy/trac#21001 is implemented in chutney, we can test that IPv6-only tor clients can use microdescriptors.
IPv6-only clients using microdescs are supported by tor 0.3.0.4-alpha and later, so we can backport to 0.3.0 if we wa...Now that legacy/trac#21001 is implemented in chutney, we can test that IPv6-only tor clients can use microdescriptors.
IPv6-only clients using microdescs are supported by tor 0.3.0.4-alpha and later, so we can backport to 0.3.0 if we want to.Tor: 0.3.2.x-finalhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24193Make v3 single onion services parse and use IPv6 introduce link specifiers2020-06-27T13:55:01ZteorMake v3 single onion services parse and use IPv6 introduce link specifiersOnce legacy/trac#23577 is merged, we can make single onion services parse IPv6 addresses in introduce link specifiers. Then they can choose the address they want to use to connect to the rend point using their firewall settings.Once legacy/trac#23577 is merged, we can make single onion services parse IPv6 addresses in introduce link specifiers. Then they can choose the address they want to use to connect to the rend point using their firewall settings.Tor: 0.4.0.x-finalDavid Gouletdgoulet@torproject.orgDavid Gouletdgoulet@torproject.orghttps://gitlab.torproject.org/tpo/core/tor/-/issues/24322make IPv6-only clients bootstrap without needing config changes.2020-06-27T13:54:56Zdkgmake IPv6-only clients bootstrap without needing config changes.legacy/trac#17281 suggests that an IPv6-only client should be able to bootstrap by setting some flags in torrc. I've done:
```
ClientUseIPv4 0
ClientUseIPv6 1
```
But, most clients are not *always* IPv4-only or IPv6-only. In particul...legacy/trac#17281 suggests that an IPv6-only client should be able to bootstrap by setting some flags in torrc. I've done:
```
ClientUseIPv4 0
ClientUseIPv6 1
```
But, most clients are not *always* IPv4-only or IPv6-only. In particular, i tend to move my laptop between networks that have different properties (i'm writing this from a v6-only network).
I shouldn't have to fiddle with my torrc to make tor work. it should be able to auto-detect this situation and do the right thing automatically.https://gitlab.torproject.org/tpo/core/tor/-/issues/24394add ipv6 dirauth address2020-06-27T13:54:52ZStefani Banerianadd ipv6 dirauth address
bastet added to dirauth in oct 2017 has ipv6 addr
2620:13:4000:6000::1000:118
per request of dirauth list message
bastet added to dirauth in oct 2017 has ipv6 addr
2620:13:4000:6000::1000:118
per request of dirauth list messageTor: 0.3.2.x-finalhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24403Propose and implement IPv6 ORPort reachability checks on relays2020-06-27T13:54:52ZteorPropose and implement IPv6 ORPort reachability checks on relaysThis is the top-level task for relay IPv6 ORPort reachability checks.
See:
https://trac.torproject.org/projects/tor/wiki/org/roadmaps/Tor/IPv6Features#ReachabilityChecks
Check the child tickets for details.This is the top-level task for relay IPv6 ORPort reachability checks.
See:
https://trac.torproject.org/projects/tor/wiki/org/roadmaps/Tor/IPv6Features#ReachabilityChecks
Check the child tickets for details.Tor: unspecifiedhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24404Propose a relay protover that allows IPv6 extends2020-06-27T13:54:52ZteorPropose a relay protover that allows IPv6 extendsWrite a proposal for a relay protover, in which relays with IPv6 ORPorts start attempting to connect to IPv6 ORPorts in response to EXTEND2 cells containing IPv6 addresses. (Relays always prefer existing canonical connections, which may ...Write a proposal for a relay protover, in which relays with IPv6 ORPorts start attempting to connect to IPv6 ORPorts in response to EXTEND2 cells containing IPv6 addresses. (Relays always prefer existing canonical connections, which may be over IPv4.)Tor: 0.4.4.x-finalhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24488Make set_routerstatus_from_routerinfo() set IPv6 unspecified addresses2020-06-27T13:54:48ZteorMake set_routerstatus_from_routerinfo() set IPv6 unspecified addressesset_routerstatus_from_routerinfo() currently sets ipv6_orport to all zeroes. But it should be set to the unspecified IPv6 address.
This is unlikely to cause any bugs in previous Tor versions, but we should fix this for correctness.
Thi...set_routerstatus_from_routerinfo() currently sets ipv6_orport to all zeroes. But it should be set to the unspecified IPv6 address.
This is unlikely to cause any bugs in previous Tor versions, but we should fix this for correctness.
This is a bug on commit 6d99c51 in 0.2.4.1-alpha.Tor: 0.3.3.x-finalteorteorhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24572rewrite_node_address_for_bridge() doesn't set rs IPv6 addresses2020-06-27T13:54:44Zteorrewrite_node_address_for_bridge() doesn't set rs IPv6 addressesrewrite_node_address_for_bridge() should set the IPv6 address in rs, as well as setting the one in ri. We can copy the code from ri.
This goes back to commit 9e9edf71f7d in tor 0.2.4.5-alpha.
This is unlikely to have caused any bugs si...rewrite_node_address_for_bridge() should set the IPv6 address in rs, as well as setting the one in ri. We can copy the code from ri.
This goes back to commit 9e9edf71f7d in tor 0.2.4.5-alpha.
This is unlikely to have caused any bugs since at least 0.2.8, because node_get_*_or_addr() checks the ri before the rs.
But let's fix it anyway, for consistency and better logging.
(Eventually, we will rip out this code when we make ri and rs read-only.)Tor: 0.3.3.x-finalffmanceraffmancerahttps://gitlab.torproject.org/tpo/core/tor/-/issues/24573rewrite_node_address_for_bridge() should set IPv6 preferences even if there ...2020-06-27T13:54:44Zteorrewrite_node_address_for_bridge() should set IPv6 preferences even if there is no rirewrite_node_address_for_bridge() should always set IPv6 preferences, even if there is only one of ri or rs. And it should always warn about them.
This goes back to commit c213f277cde in 0.2.8.2-alpha and commit 9e9edf71f7d in 0.2.4.5-a...rewrite_node_address_for_bridge() should always set IPv6 preferences, even if there is only one of ri or rs. And it should always warn about them.
This goes back to commit c213f277cde in 0.2.8.2-alpha and commit 9e9edf71f7d in 0.2.4.5-alpha.Tor: 0.3.3.x-finalhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24677Use ping ::1 on Linux when ping6 ::1 fails2020-06-27T13:54:38ZteorUse ping ::1 on Linux when ping6 ::1 failsTurns out that some Linuxes don't have ping6, but ping ::1 works just fine.
This is a one-line change in Makefile.amTurns out that some Linuxes don't have ping6, but ping ::1 works just fine.
This is a one-line change in Makefile.amTor: 0.3.3.x-finalhttps://gitlab.torproject.org/tpo/core/tor/-/issues/24703Document IPv6Exit in the sample torrcs2020-06-27T13:54:37ZteorDocument IPv6Exit in the sample torrcsWe could backport this to 0.3.2 if we want to get it in the next release.We could backport this to 0.3.2 if we want to get it in the next release.Tor: 0.3.2.x-finalteorteor