summaryrefslogtreecommitdiff
path: root/src/or
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2010-09-29 01:10:20 -0400
committerRoger Dingledine <arma@torproject.org>2010-09-29 03:00:06 -0400
commit0ed8d5a537d1092f510342d07bd7970185995ebf (patch)
tree1f960d3d1ad96d596019f779bd3019477fc3f262 /src/or
parent50720a9a4f8ea4433f3696d42d2f640ad970b285 (diff)
downloadtor-0ed8d5a537d1092f510342d07bd7970185995ebf.tar.gz
tor-0ed8d5a537d1092f510342d07bd7970185995ebf.zip
allow countries and IP addresses in EntryNodes
Diffstat (limited to 'src/or')
-rw-r--r--src/or/circuitbuild.c11
-rw-r--r--src/or/config.c5
2 files changed, 5 insertions, 11 deletions
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 2b4540bf3b..b798891ddf 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -3820,12 +3820,11 @@ entry_guards_prepend_from_config(or_options_t *options)
/* Split entry guards into those on the list and those not. */
- /* XXXX022 Now that we allow countries and IP ranges in EntryNodes, this is
- * potentially an enormous list. For now, we disable such values for
- * EntryNodes in options_validate(); really, this wants a better solution.
- * Perhaps we should do this calculation once whenever the list of routers
- * changes or the entrynodes setting changes.
- */
+ /* Now that we allow countries and IP ranges in EntryNodes, this is
+ * potentially an enormous list. It's not so bad though because we
+ * only call this function when a) we're making a new circuit, and b)
+ * we've called directory_info_has_arrived() or changed our EntryNodes
+ * since the last time we made a circuit. */
routerset_get_all_routers(entry_routers, options->EntryNodes, 0);
SMARTLIST_FOREACH(entry_routers, routerinfo_t *, ri,
smartlist_add(entry_fps,ri->cache_info.identity_digest));
diff --git a/src/or/config.c b/src/or/config.c
index 23cad9268b..e2b1b6562d 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -3088,11 +3088,6 @@ options_validate(or_options_t *old_options, or_options_t *options,
"features to be broken in unpredictable ways.");
}
- if (options->EntryNodes && !routerset_is_list(options->EntryNodes)) {
- /* XXXX fix this; see entry_guards_prepend_from_config(). */
- REJECT("IPs or countries are not yet supported in EntryNodes.");
- }
-
if (options->AuthoritativeDir) {
if (!options->ContactInfo && !options->TestingTorNetwork)
REJECT("Authoritative directory servers must set ContactInfo");