[tor-commits] [tor/master] Merge remote-tracking branch 'teor/reject-tap-v6'

nickm at torproject.org nickm at torproject.org
Mon Aug 29 19:11:31 UTC 2016


commit bbaa7d09a045130560a2f5da579671c5e02c9cd7
Merge: f46ce6e 19816f2
Author: Nick Mathewson <nickm at torproject.org>
Date:   Mon Aug 29 15:02:11 2016 -0400

    Merge remote-tracking branch 'teor/reject-tap-v6'

 changes/reject-tap     |  15 ++++
 doc/tor.1.txt          |  10 ---
 src/or/circuitbuild.c  | 230 +++++++++++++++++++++++++++++++++++--------------
 src/or/circuitbuild.h  |   5 ++
 src/or/circuitlist.c   |   6 +-
 src/or/config.c        |   2 +-
 src/or/dirserv.c       |  14 +++
 src/or/networkstatus.c |   6 ++
 src/or/nodelist.c      |  28 +++++-
 src/or/onion.c         |   4 +-
 src/or/or.h            |   3 -
 src/or/rendclient.c    |   7 +-
 src/or/rendservice.c   |   8 ++
 src/or/rendservice.h   |   2 +
 src/or/router.c        |   4 +
 src/or/routerlist.c    |  51 ++++++++++-
 src/or/routerlist.h    |   3 +
 src/test/test_dir.c    |  20 +++--
 18 files changed, 325 insertions(+), 93 deletions(-)

diff --cc src/or/config.c
index 31bf818,7478e60..6ab2fd8
--- a/src/or/config.c
+++ b/src/or/config.c
@@@ -438,9 -438,9 +438,9 @@@ static config_var_t option_vars_[] = 
    V(UseEntryGuardsAsDirGuards,   BOOL,     "1"),
    V(UseGuardFraction,            AUTOBOOL, "auto"),
    V(UseMicrodescriptors,         AUTOBOOL, "auto"),
-   V(UseNTorHandshake,            AUTOBOOL, "1"),
+   OBSOLETE("UseNTorHandshake"),
    V(User,                        STRING,   NULL),
 -  V(UserspaceIOCPBuffers,        BOOL,     "0"),
 +  OBSOLETE("UserspaceIOCPBuffers"),
    V(AuthDirSharedRandomness,     BOOL,     "1"),
    OBSOLETE("V1AuthoritativeDirectory"),
    OBSOLETE("V2AuthoritativeDirectory"),
diff --cc src/or/routerlist.c
index 1773f1d,0801503..74b8d1b
--- a/src/or/routerlist.c
+++ b/src/or/routerlist.c
@@@ -2260,10 -2260,15 +2260,16 @@@ router_add_running_nodes_to_smartlist(s
        continue;
      if (node_is_unreliable(node, need_uptime, need_capacity, need_guard))
        continue;
-     /* Choose a node with an OR address that matches the firewall rules,
-      * if we are making a direct connection */
+     /* Don't choose nodes if we are certain they can't do ntor */
+     if (node->rs && !routerstatus_version_supports_ntor(node->rs, 1))
+       continue;
+     if ((node->ri || node->md) && !node_has_curve25519_onion_key(node))
+       continue;
+     /* Choose a node with an OR address that matches the firewall rules */
 -    if (check_reach && !fascist_firewall_allows_node(node,
 -                                                     FIREWALL_OR_CONNECTION,
 -                                                     pref_addr))
 +    if (direct_conn && check_reach &&
-         !fascist_firewall_allows_node(node, FIREWALL_OR_CONNECTION, pref_addr))
++        !fascist_firewall_allows_node(node,
++                                      FIREWALL_OR_CONNECTION,
++                                      pref_addr))
        continue;
  
      smartlist_add(sl, (void *)node);





More information about the tor-commits mailing list