aboutsummaryrefslogtreecommitdiff
path: root/src/or/routerset.h
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2013-01-17 18:07:36 -0500
committerNick Mathewson <nickm@torproject.org>2013-01-17 18:07:36 -0500
commitff9bdbd56ffdc4d91da377ca5e1624b58aeaab8e (patch)
tree0c44e10f1a65d15de9e1f203b8594885dd6bd828 /src/or/routerset.h
parente0581a4b571f13dd0de801792c853e22ac244a36 (diff)
downloadtor-ff9bdbd56ffdc4d91da377ca5e1624b58aeaab8e.tar
tor-ff9bdbd56ffdc4d91da377ca5e1624b58aeaab8e.tar.gz
When excluding nodes by country, exclude {??} and {A1} too
This is ticket 7706, reported by "bugcatcher." The rationale here is that if somebody says 'ExcludeNodes {tv}', then they probably don't just want to block definitely Tuvaluan nodes: they also want to block nodes that have unknown country, since for all they know such nodes are also in Tuvalu. This behavior is controlled by a new GeoIPExcludeUnknown autobool option. With the default (auto) setting, we exclude ?? and A1 if any country is excluded. If the option is 1, we add ?? and A1 unconditionally; if the option is 0, we never add them. (Right now our geoip file doesn't actually seem to include A1: I'm including it here in case it comes back.) This feature only takes effect if you have a GeoIP file. Otherwise you'd be excluding every node.
Diffstat (limited to 'src/or/routerset.h')
-rw-r--r--src/or/routerset.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/or/routerset.h b/src/or/routerset.h
index cd4a8375e..bfa0c59ac 100644
--- a/src/or/routerset.h
+++ b/src/or/routerset.h
@@ -31,6 +31,7 @@ int routerset_contains_node(const routerset_t *set, const node_t *node);
void routerset_get_all_nodes(smartlist_t *out, const routerset_t *routerset,
const routerset_t *excludeset,
int running_only);
+int routerset_add_unknown_ccs(routerset_t **setp, int only_if_some_cc_set);
#if 0
void routersets_get_node_disjunction(smartlist_t *target,
const smartlist_t *source,