From 25f78498f91ba9f482bc654d3af8905b600d4f7f Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Mon, 17 Dec 2007 22:44:16 +0000 Subject: r15531@tombo: nickm | 2007-12-17 17:19:24 -0500 Support raw IP-to-country as well as postprocessed format. Include GEOIP summary in extrainfo of bridges. svn:r12846 --- src/or/geoip.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/or/geoip.c') diff --git a/src/or/geoip.c b/src/or/geoip.c index eeeb453f2..c9fb91cdf 100644 --- a/src/or/geoip.c +++ b/src/or/geoip.c @@ -81,9 +81,14 @@ geoip_load_file(const char *filename) geoip_entries = smartlist_create(); country_idxplus1_by_lc_code = strmap_new(); while (!feof(f)) { + char buf[512]; unsigned int low, high; char b[3]; - if (fscanf(f, "%u,%u,%2s", &low, &high, b) == 3) { + if (fgets(buf, sizeof(buf), f) == NULL) + break; + if (sscanf(buf,"%u,%u,%2s", &low, &high, b) == 3) { + geoip_add_entry(low, high, b); + } else if (sscanf(buf,"\"%u\",\"%u\",\"%2s\",", &low, &high, b) == 3) { geoip_add_entry(low, high, b); } } @@ -200,6 +205,12 @@ geoip_remove_old_clients(time_t cutoff) #define MIN_IPS_TO_NOTE_ANYTHING 16 #define IP_GRANULARITY 8 +time_t +geoip_get_history_start(void) +{ + return client_history_starts; +} + char * geoip_get_client_history(time_t now) { -- cgit v1.2.3