aboutsummaryrefslogtreecommitdiff
path: root/src/or/nodelist.h
diff options
context:
space:
mode:
authorLinus Nordberg <linus@torproject.org>2012-08-27 15:03:34 +0200
committerNick Mathewson <nickm@torproject.org>2012-09-04 12:57:21 -0400
commite04e1a2e7d67861881c9e237dcea344dda39e858 (patch)
treee5ca5d75af523b6bf1a93fd027a70b2bf4b186f4 /src/or/nodelist.h
parentd6ad00a01f703a79d9ca6d6edd958b4d05279b4e (diff)
downloadtor-e04e1a2e7d67861881c9e237dcea344dda39e858.tar
tor-e04e1a2e7d67861881c9e237dcea344dda39e858.tar.gz
Clients connect to public relays over IPv6.
Add ClientUseIPv6 and ClientPreferIPv6ORPort configuration options. Use "preferred OR port" for all entry nodes, not only for bridges. Mark bridges with "prefer IPv6 OR port" if an IPv6 address is configured in Bridge line and ClientPreferIPv6ORPort is set. Mark relays with "prefer IPv6 OR port" if an IPv6 address is found in descriptor and ClientPreferIPv6ORPort is set. Filter "preferred OR port" through the ClientUseIPv6 config option. We might want to move this test to where actual connection is being set up once we have a fall back mechanism in place. Have only non-servers pick an IPv6 address for the first hop: We don't want relays to connect over IPv6 yet. (IPv6 has never been used for second or third hops.) Implements ticket 5535.
Diffstat (limited to 'src/or/nodelist.h')
-rw-r--r--src/or/nodelist.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/or/nodelist.h b/src/or/nodelist.h
index 555882796..18bf4ae60 100644
--- a/src/or/nodelist.h
+++ b/src/or/nodelist.h
@@ -42,18 +42,18 @@ int node_get_purpose(const node_t *node);
int node_is_me(const node_t *node);
int node_exit_policy_rejects_all(const node_t *node);
smartlist_t *node_get_all_orports(const node_t *node);
-void node_get_prim_orport(const node_t *node, tor_addr_port_t *ap_out);
-void node_get_pref_orport(const node_t *node, tor_addr_port_t *ap_out);
-void node_get_pref_ipv6_orport(const node_t *node, tor_addr_port_t *ap_out);
-uint32_t node_get_prim_addr_ipv4h(const node_t *node);
int node_allows_single_hop_exits(const node_t *node);
const char *node_get_nickname(const node_t *node);
const char *node_get_platform(const node_t *node);
+uint32_t node_get_prim_addr_ipv4h(const node_t *node);
void node_get_address_string(const node_t *node, char *cp, size_t len);
long node_get_declared_uptime(const node_t *node);
time_t node_get_published_on(const node_t *node);
const smartlist_t *node_get_declared_family(const node_t *node);
int node_ipv6_preferred(const node_t *node);
+void node_get_prim_orport(const node_t *node, tor_addr_port_t *ap_out);
+void node_get_pref_orport(const node_t *node, tor_addr_port_t *ap_out);
+void node_get_pref_ipv6_orport(const node_t *node, tor_addr_port_t *ap_out);
smartlist_t *nodelist_get_list(void);