]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Move the "nowhereland" logic into geoip.c
authorNick Mathewson <nickm@torproject.org>
Sat, 31 Jul 2010 19:06:55 +0000 (15:06 -0400)
committerNick Mathewson <nickm@torproject.org>
Sat, 31 Jul 2010 19:21:00 +0000 (15:21 -0400)
src/or/geoip.c
src/or/routerlist.c

index 6bb76ae4da2a83af18c50239660a746471507d0d..adbad8af738beb0699cddbcf711afa0e20670bfa 100644 (file)
@@ -228,9 +228,10 @@ geoip_load_file(const char *filename, or_options_t *options)
 }
 
 /** Given an IP address in host order, return a number representing the
- * country to which that address belongs, or -1 for unknown.  The return value
- * will always be less than geoip_get_n_countries().  To decode it,
- * call geoip_get_country_name().
+ * country to which that address belongs, -1 for "No geoip information
+ * available", or 0 for the 'unknown country'.  The return value will always
+ * be less than geoip_get_n_countries().  To decode it, call
+ * geoip_get_country_name().
  */
 int
 geoip_get_country_by_ip(uint32_t ipaddr)
@@ -239,7 +240,7 @@ geoip_get_country_by_ip(uint32_t ipaddr)
   if (!geoip_entries)
     return -1;
   ent = smartlist_bsearch(geoip_entries, &ipaddr, _geoip_compare_key_to_entry);
-  return ent ? (int)ent->country : -1;
+  return ent ? (int)ent->country : 0;
 }
 
 /** Return the number of countries recognized by the GeoIP database. */
index 7be98bd1a5cb08c79cb446297235731ae1dd640c..5f98abe01b6d42f6e9466cd7671ffc67a9ccd4eb 100644 (file)
@@ -5335,10 +5335,6 @@ routerset_contains(const routerset_t *set, const tor_addr_t *addr,
     if (country < 0 && addr)
       country = geoip_get_country_by_ip(tor_addr_to_ipv4h(addr));
 
-    /* XXXX can we safely move this into geoip_get_country_by_ip? */
-    if (country < 0)
-      country = 0;
-
     if (country >= 0 && country < set->n_countries &&
         bitarray_is_set(set->countries, country))
       return 2;