the other half of the is_local_IP patch

svn:r8581
This commit is contained in:
Roger Dingledine 2006-10-03 05:45:58 +00:00
parent 4c56ac93ca
commit 246fecb585
2 changed files with 5 additions and 3 deletions

View File

@ -1443,6 +1443,7 @@ compute_preferred_testing_list(const char *answer)
((tor_version_as_new_as(r->platform,"0.1.1.21-cvs") &&
!tor_version_as_new_as(r->platform,"0.1.2.0-alpha-cvs")) ||
tor_version_as_new_as(r->platform,"0.1.2.1-alpha")) &&
!is_local_IP(r->addr) &&
!router_get_trusteddirserver_by_digest(r->cache_info.identity_digest))
smartlist_add(choices, r));
router = smartlist_choose(choices);

View File

@ -1729,9 +1729,10 @@ is_local_IP(uint32_t ip)
{
if (is_internal_IP(ip, 0))
return 1;
/* Check whether ip is on the same /24 as we are.
*
* It's possible that this next check will hit before the first time
/* Check whether ip is on the same /24 as we are. */
if (get_options()->EnforceDistinctSubnets == 0)
return 0;
/* It's possible that this next check will hit before the first time
* resolve_my_address actually succeeds. (For clients, it is likely that
* resolve_my_address will never be called at all). In those cases,
* last_resolved_addr will be 0, and so checking to see whether ip is on the