aboutsummaryrefslogtreecommitdiff
path: root/src/or/config.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2012-11-25 14:51:36 -0500
committerNick Mathewson <nickm@torproject.org>2012-12-17 14:51:30 -0500
commit8d080d0b01f61c282ca8843801f2ebc8ae98c764 (patch)
tree2607cd2b36d89d15bebadaa8f3a88ce6f3e000d6 /src/or/config.c
parentde4cc126cbb5e663bdd048fd782fde869be7b80a (diff)
downloadtor-8d080d0b01f61c282ca8843801f2ebc8ae98c764.tar
tor-8d080d0b01f61c282ca8843801f2ebc8ae98c764.tar.gz
Per-listener option to prefer IPv6 automaps when possible.
Diffstat (limited to 'src/or/config.c')
-rw-r--r--src/or/config.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/or/config.c b/src/or/config.c
index 60028f27d..1df10e110 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -4605,6 +4605,7 @@ port_cfg_new(void)
port_cfg_t *cfg = tor_malloc_zero(sizeof(port_cfg_t));
cfg->ipv4_traffic = 1;
cfg->cache_ipv4_answers = 1;
+ cfg->prefer_ipv6_virtaddr = 1;
return cfg;
}
@@ -4789,6 +4790,7 @@ parse_port_config(smartlist_t *out,
cfg->no_listen = 1;
cfg->bind_ipv4_only = 1;
cfg->ipv4_traffic = 1;
+ cfg->prefer_ipv6_virtaddr = 1;
smartlist_add(out, cfg);
}
@@ -4853,7 +4855,8 @@ parse_port_config(smartlist_t *out,
bind_ipv4_only = 0, bind_ipv6_only = 0,
ipv4_traffic = 1, ipv6_traffic = 0, prefer_ipv6 = 0,
cache_ipv4 = 1, use_cached_ipv4 = 0,
- cache_ipv6 = 0, use_cached_ipv6 = 0;
+ cache_ipv6 = 0, use_cached_ipv6 = 0,
+ prefer_ipv6_automap = 1;
smartlist_split_string(elts, ports->value, NULL,
SPLIT_SKIP_SPACE|SPLIT_IGNORE_BLANK, 0);
@@ -5008,6 +5011,9 @@ parse_port_config(smartlist_t *out,
} else if (!strcasecmp(elt, "UseDNSCache")) {
use_cached_ipv4 = use_cached_ipv6 = ! no;
continue;
+ } else if (!strcasecmp(elt, "PreferIPv6Automap")) {
+ prefer_ipv6_automap = ! no;
+ continue;
}
if (!strcasecmpend(elt, "s"))
@@ -5066,6 +5072,7 @@ parse_port_config(smartlist_t *out,
cfg->cache_ipv6_answers = cache_ipv6;
cfg->use_cached_ipv4_answers = use_cached_ipv4;
cfg->use_cached_ipv6_answers = use_cached_ipv6;
+ cfg->prefer_ipv6_virtaddr = prefer_ipv6_automap;
smartlist_add(out, cfg);
}