Trac issueshttps://gitlab.torproject.org/legacy/trac/-/issues2020-06-13T14:53:34Zhttps://gitlab.torproject.org/legacy/trac/-/issues/9067Choice of address and match of fascist_firewall_allows_address* need to consi...2020-06-13T14:53:34ZNick MathewsonChoice of address and match of fascist_firewall_allows_address* need to consider ipv6Right now, when we decide "can we reach node X", we only pass the node's primary address to fasist_firewall_allows_*.
Also, when we decide whether to use an primary or secondary address, we don't look at fascist_firewall_* as far as I k...Right now, when we decide "can we reach node X", we only pass the node's primary address to fasist_firewall_allows_*.
Also, when we decide whether to use an primary or secondary address, we don't look at fascist_firewall_* as far as I know.Tor: 0.2.8.x-finalteorteorhttps://gitlab.torproject.org/legacy/trac/-/issues/9068Unify reachableaddresses and IPv6 settings2020-06-13T14:53:34ZNick MathewsonUnify reachableaddresses and IPv6 settingsThere's really no difference between "I can't reach IPv6" and "ClientUseIPv6 0". Let's make them redundant. Let's also add an "I can't reach IPv4" option.
See #6027 and #9067There's really no difference between "I can't reach IPv6" and "ClientUseIPv6 0". Let's make them redundant. Let's also add an "I can't reach IPv4" option.
See #6027 and #9067Tor: 0.2.8.x-finalteorteorhttps://gitlab.torproject.org/legacy/trac/-/issues/17281Make IPv6-only clients work and bootstrap2020-06-13T16:03:33ZNick MathewsonMake IPv6-only clients work and bootstrapWe have a big pile of IPv6 tickets, but none of them actually is for this.
If you start a tor client on an IPv6-only connection, it should bootstrap and connect to the network happily.
Part of this can be solved through the use of fall...We have a big pile of IPv6 tickets, but none of them actually is for this.
If you start a tor client on an IPv6-only connection, it should bootstrap and connect to the network happily.
Part of this can be solved through the use of fallback directories on ipv6, but we need to make sure that the code actually works (#15235)Tor: 0.2.8.x-finalteorteorhttps://gitlab.torproject.org/legacy/trac/-/issues/17834Add ClientPreferIPv6DirPort2020-06-13T14:52:20ZteorAdd ClientPreferIPv6DirPortAdd ClientPreferIPv6DirPort to express a preference for IPv6 directory connections over IPv4 directory connections.
Tor already has ClientPreferIPv6ORPort, which expresses a preference for IPv6 OR connections over IPv4 OR connections.
...Add ClientPreferIPv6DirPort to express a preference for IPv6 directory connections over IPv4 directory connections.
Tor already has ClientPreferIPv6ORPort, which expresses a preference for IPv6 OR connections over IPv4 OR connections.
(ClientUseIPv6 allows the use of IPv6 connections, ClientPreferIPv6ORPort/ClientPreferIPv6DirPort are the tie-breakers if IPv4 and IPv6 are both equally likely.)
While we're doing this, let's warn on nonsensical situations like ClientPreferIPv6* 1 ClientUseIPv6 0. (Although ClientPreferIPv6* 0 ClientUseIPv6 1 should be an info or notice, as ClientPreferIPv6* 0 is the default.)Tor: 0.2.8.x-finalteorteorhttps://gitlab.torproject.org/legacy/trac/-/issues/17963Bridge clients should get directory documents via IPv62020-06-13T14:53:09ZteorBridge clients should get directory documents via IPv6In directory_get_from_dirserver, a bridge client determines the bridge's address using node_get_addr, which only returns IPv4 addresses.
After #17840 is merged, the bridge client should:
* respect ClientUseIPv4/6
* choose a random direc...In directory_get_from_dirserver, a bridge client determines the bridge's address using node_get_addr, which only returns IPv4 addresses.
After #17840 is merged, the bridge client should:
* respect ClientUseIPv4/6
* choose a random directory guard that has an available address family (this should just work in choose_random_dirguard after #17840, but we need to check this)
* choose an address from that dirguard from an available address family
And maybe:
* respect ClientPreferIPv6OR/DirPort
* set ClientPreferIPv6OR/DirPort to 1 by default?
* this will be tricky because these options already have a default value, and we don't want to write it outTor: 0.2.9.x-finalhttps://gitlab.torproject.org/legacy/trac/-/issues/18132options_validate: add ClientUseIPv4 unit tests and update other unit tests2020-06-13T14:53:40Zteoroptions_validate: add ClientUseIPv4 unit tests and update other unit tests#17076 adds unit tests for options_validate. It's been merged to master.
#17840 adds ClientUseIPv4 and ClientPreferIPv6DirPort, and changes the meaning of other options. It was based off pre-#17076 master.
This ticket is for updating t...#17076 adds unit tests for options_validate. It's been merged to master.
#17840 adds ClientUseIPv4 and ClientPreferIPv6DirPort, and changes the meaning of other options. It was based off pre-#17076 master.
This ticket is for updating the unit tests after #17840 merges.Tor: 0.2.8.x-finalteorteor