diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | src/app/config/config.c | 2 | ||||
-rw-r--r-- | src/app/main/main.c | 2 | ||||
-rw-r--r-- | src/core/include.am | 2 | ||||
-rw-r--r-- | src/core/mainloop/connection.c | 2 | ||||
-rw-r--r-- | src/core/or/connection_or.c | 2 | ||||
-rw-r--r-- | src/core/or/or.h | 4 | ||||
-rw-r--r-- | src/core/or/policies.c | 2 | ||||
-rw-r--r-- | src/feature/control/getinfo_geoip.c | 2 | ||||
-rw-r--r-- | src/feature/nodelist/nodelist.c | 2 | ||||
-rw-r--r-- | src/feature/nodelist/routerset.c | 2 | ||||
-rw-r--r-- | src/feature/relay/router.c | 2 | ||||
-rw-r--r-- | src/feature/stats/geoip_stats.c | 2 | ||||
-rw-r--r-- | src/include.am | 1 | ||||
-rw-r--r-- | src/lib/geoip/.may_include | 12 | ||||
-rw-r--r-- | src/lib/geoip/country.h | 14 | ||||
-rw-r--r-- | src/lib/geoip/geoip.c (renamed from src/feature/stats/geoip.c) | 8 | ||||
-rw-r--r-- | src/lib/geoip/geoip.h (renamed from src/feature/stats/geoip.h) | 2 | ||||
-rw-r--r-- | src/lib/geoip/include.am | 17 | ||||
-rw-r--r-- | src/test/test_config.c | 2 | ||||
-rw-r--r-- | src/test/test_dir_handle_get.c | 2 | ||||
-rw-r--r-- | src/test/test_geoip.c | 2 | ||||
-rw-r--r-- | src/test/test_options.c | 2 | ||||
-rw-r--r-- | src/test/test_routerset.c | 2 |
25 files changed, 66 insertions, 28 deletions
diff --git a/.gitignore b/.gitignore index 1cd99dfd38..cedff8fb37 100644 --- a/.gitignore +++ b/.gitignore @@ -173,6 +173,8 @@ uptime-*.json /src/lib/libtor-fdio-testing.a /src/lib/libtor-fs.a /src/lib/libtor-fs-testing.a +/src/lib/libtor-geoip.a +/src/lib/libtor-geoip-testing.a /src/lib/libtor-intmath.a /src/lib/libtor-intmath-testing.a /src/lib/libtor-lock.a diff --git a/Makefile.am b/Makefile.am index 36a5dd2e9e..a0f513c75e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -40,6 +40,7 @@ endif # "Common" libraries used to link tor's utility code. TOR_UTIL_LIBS = \ + src/lib/libtor-geoip.a \ src/lib/libtor-process.a \ src/lib/libtor-time.a \ src/lib/libtor-fs.a \ @@ -68,6 +69,7 @@ TOR_UTIL_LIBS = \ # and tests) if UNITTESTS_ENABLED TOR_UTIL_TESTING_LIBS = \ + src/lib/libtor-geoip-testing.a \ src/lib/libtor-process-testing.a \ src/lib/libtor-time-testing.a \ src/lib/libtor-fs-testing.a \ diff --git a/src/app/config/config.c b/src/app/config/config.c index 53cc9c0acf..d44b17ce65 100644 --- a/src/app/config/config.c +++ b/src/app/config/config.c @@ -103,7 +103,7 @@ #include "feature/relay/routermode.h" #include "feature/rend/rendclient.h" #include "feature/rend/rendservice.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/stats/geoip_stats.h" #include "feature/stats/predict_ports.h" #include "feature/stats/rephist.h" diff --git a/src/app/main/main.c b/src/app/main/main.c index 2266a5ff7f..8a24df2105 100644 --- a/src/app/main/main.c +++ b/src/app/main/main.c @@ -61,7 +61,7 @@ #include "feature/rend/rendcache.h" #include "feature/rend/rendclient.h" #include "feature/rend/rendservice.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/stats/geoip_stats.h" #include "feature/stats/predict_ports.h" #include "feature/stats/rephist.h" diff --git a/src/core/include.am b/src/core/include.am index 1a26a65c27..e51819fa20 100644 --- a/src/core/include.am +++ b/src/core/include.am @@ -117,7 +117,6 @@ LIBTOR_APP_A_SOURCES = \ src/feature/rend/rendcommon.c \ src/feature/rend/rendmid.c \ src/feature/rend/rendservice.c \ - src/feature/stats/geoip.c \ src/feature/stats/geoip_stats.c \ src/feature/stats/rephist.c \ src/feature/stats/predict_ports.c @@ -350,7 +349,6 @@ noinst_HEADERS += \ src/feature/rend/rendcommon.h \ src/feature/rend/rendmid.h \ src/feature/rend/rendservice.h \ - src/feature/stats/geoip.h \ src/feature/stats/geoip_stats.h \ src/feature/stats/rephist.h \ src/feature/stats/predict_ports.h diff --git a/src/core/mainloop/connection.c b/src/core/mainloop/connection.c index 18863fc04f..d8326a5be8 100644 --- a/src/core/mainloop/connection.c +++ b/src/core/mainloop/connection.c @@ -102,7 +102,7 @@ #include "feature/relay/routermode.h" #include "feature/rend/rendclient.h" #include "feature/rend/rendcommon.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/stats/rephist.h" #include "lib/crypt_ops/crypto_util.h" diff --git a/src/core/or/connection_or.c b/src/core/or/connection_or.c index 4a724a24d3..65f4e28c92 100644 --- a/src/core/or/connection_or.c +++ b/src/core/or/connection_or.c @@ -43,7 +43,7 @@ #include "lib/crypt_ops/crypto_util.h" #include "feature/dirauth/reachability.h" #include "feature/client/entrynodes.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "core/mainloop/mainloop.h" #include "trunnel/link_handshake.h" #include "feature/nodelist/microdesc.h" diff --git a/src/core/or/or.h b/src/core/or/or.h index 7557c1321e..acf092c8dc 100644 --- a/src/core/or/or.h +++ b/src/core/or/or.h @@ -41,6 +41,7 @@ #include "lib/fs/mmap.h" #include "lib/fs/path.h" #include "lib/fs/userdb.h" +#include "lib/geoip/country.h" #include "lib/intmath/addsub.h" #include "lib/intmath/bits.h" #include "lib/intmath/cmp.h" @@ -798,9 +799,6 @@ typedef struct download_status_t download_status_t; typedef struct signed_descriptor_t signed_descriptor_t; -/** A signed integer representing a country code. */ -typedef int16_t country_t; - /** Flags used to summarize the declared protocol versions of a relay, * so we don't need to parse them again and again. */ typedef struct protover_summary_flags_t { diff --git a/src/core/or/policies.c b/src/core/or/policies.c index fc359627b9..c3fded1fbd 100644 --- a/src/core/or/policies.c +++ b/src/core/or/policies.c @@ -27,7 +27,7 @@ #include "feature/relay/router.h" #include "feature/relay/routermode.h" #include "feature/nodelist/routerparse.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "ht.h" #include "lib/encoding/confline.h" diff --git a/src/feature/control/getinfo_geoip.c b/src/feature/control/getinfo_geoip.c index 35eb3f6aed..d188725fa3 100644 --- a/src/feature/control/getinfo_geoip.c +++ b/src/feature/control/getinfo_geoip.c @@ -3,7 +3,7 @@ #include "core/mainloop/connection.h" #include "feature/control/control.h" #include "feature/control/getinfo_geoip.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" /** Helper used to implement GETINFO ip-to-country/... controller command. */ int diff --git a/src/feature/nodelist/nodelist.c b/src/feature/nodelist/nodelist.c index e3b77d562c..90ca579b7d 100644 --- a/src/feature/nodelist/nodelist.c +++ b/src/feature/nodelist/nodelist.c @@ -65,7 +65,7 @@ #include "feature/nodelist/routerset.h" #include "feature/nodelist/torcert.h" #include "feature/rend/rendservice.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "lib/net/address.h" #include <string.h> diff --git a/src/feature/nodelist/routerset.c b/src/feature/nodelist/routerset.c index 08124835ae..cb07a436d1 100644 --- a/src/feature/nodelist/routerset.c +++ b/src/feature/nodelist/routerset.c @@ -34,7 +34,7 @@ n * Copyright (c) 2001-2004, Roger Dingledine. #include "feature/nodelist/nodelist.h" #include "feature/nodelist/routerparse.h" #include "feature/nodelist/routerset.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "core/or/addr_policy_st.h" #include "core/or/extend_info_st.h" diff --git a/src/feature/relay/router.c b/src/feature/relay/router.c index 4946348451..fdaadb205b 100644 --- a/src/feature/relay/router.c +++ b/src/feature/relay/router.c @@ -36,7 +36,7 @@ #include "feature/relay/routerkeys.h" #include "feature/relay/routermode.h" #include "feature/relay/selftest.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/stats/geoip_stats.h" #include "feature/stats/rephist.h" #include "lib/crypt_ops/crypto_ed25519.h" diff --git a/src/feature/stats/geoip_stats.c b/src/feature/stats/geoip_stats.c index 4af2ff0ec0..d1a5dd79ba 100644 --- a/src/feature/stats/geoip_stats.c +++ b/src/feature/stats/geoip_stats.c @@ -35,7 +35,7 @@ #include "feature/control/control.h" #include "feature/client/dnsserv.h" #include "core/or/dos.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/stats/geoip_stats.h" #include "feature/nodelist/routerlist.h" diff --git a/src/include.am b/src/include.am index b5cca7e30a..d2f83da814 100644 --- a/src/include.am +++ b/src/include.am @@ -11,6 +11,7 @@ include src/lib/encoding/include.am include src/lib/evloop/include.am include src/lib/fdio/include.am include src/lib/fs/include.am +include src/lib/geoip/include.am include src/lib/include.libdonna.am include src/lib/intmath/include.am include src/lib/lock/include.am diff --git a/src/lib/geoip/.may_include b/src/lib/geoip/.may_include new file mode 100644 index 0000000000..63207125bc --- /dev/null +++ b/src/lib/geoip/.may_include @@ -0,0 +1,12 @@ +lib/cc/*.h +lib/container/*.h +lib/crypt_ops/*.h +lib/ctime/*.h +lib/encoding/*.h +lib/fs/*.h +lib/geoip/*.h +lib/log/*.h +lib/malloc/*.h +lib/net/*.h +lib/string/*.h +lib/testsupport/*.h diff --git a/src/lib/geoip/country.h b/src/lib/geoip/country.h new file mode 100644 index 0000000000..e4ad0752b3 --- /dev/null +++ b/src/lib/geoip/country.h @@ -0,0 +1,14 @@ +/* Copyright (c) 2001 Matej Pfajfar. + * Copyright (c) 2001-2004, Roger Dingledine. + * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson. + * Copyright (c) 2007-2018, The Tor Project, Inc. */ +/* See LICENSE for licensing information */ + +#ifndef TOR_COUNTRY_H +#define TOR_COUNTRY_H + +#include "lib/cc/torint.h" +/** A signed integer representing a country code. */ +typedef int16_t country_t; + +#endif diff --git a/src/feature/stats/geoip.c b/src/lib/geoip/geoip.c index 4966150802..b1c0973d03 100644 --- a/src/feature/stats/geoip.c +++ b/src/lib/geoip/geoip.c @@ -28,12 +28,7 @@ */ #define GEOIP_PRIVATE - -#include "lib/cc/torint.h" -/** A signed integer representing a country code. */ -typedef int16_t country_t; // XXXX duplicate in or.h - -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "lib/container/map.h" #include "lib/container/order.h" #include "lib/container/smartlist.h" @@ -49,7 +44,6 @@ typedef int16_t country_t; // XXXX duplicate in or.h #include "lib/string/compat_string.h" #include "lib/string/scanf.h" #include "lib/string/util_string.h" -#include "lib/time/tvdiff.h" #include <stdio.h> #include <string.h> diff --git a/src/feature/stats/geoip.h b/src/lib/geoip/geoip.h index 1ca04cdff6..3c1238c319 100644 --- a/src/feature/stats/geoip.h +++ b/src/lib/geoip/geoip.h @@ -14,7 +14,7 @@ #include "lib/net/nettypes.h" #include "lib/testsupport/testsupport.h" -#include "lib/cc/torint.h" +#include "lib/geoip/country.h" #ifdef GEOIP_PRIVATE STATIC int geoip_parse_entry(const char *line, sa_family_t family); diff --git a/src/lib/geoip/include.am b/src/lib/geoip/include.am new file mode 100644 index 0000000000..9710d75ac7 --- /dev/null +++ b/src/lib/geoip/include.am @@ -0,0 +1,17 @@ +noinst_LIBRARIES += src/lib/libtor-geoip.a + +if UNITTESTS_ENABLED +noinst_LIBRARIES += src/lib/libtor-geoip-testing.a +endif + +src_lib_libtor_geoip_a_SOURCES = \ + src/lib/geoip/geoip.c + +src_lib_libtor_geoip_testing_a_SOURCES = \ + $(src_lib_libtor_geoip_a_SOURCES) +src_lib_libtor_geoip_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS) +src_lib_libtor_geoip_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS) + +noinst_HEADERS += \ + src/lib/geoip/geoip.h \ + src/lib/geoip/country.h diff --git a/src/test/test_config.c b/src/test/test_config.c index 77c0d248c2..dae4d83766 100644 --- a/src/test/test_config.c +++ b/src/test/test_config.c @@ -29,7 +29,7 @@ #include "feature/client/entrynodes.h" #include "feature/client/transports.h" #include "feature/relay/ext_orport.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/hibernate/hibernate.h" #include "core/mainloop/mainloop.h" #include "feature/nodelist/networkstatus.h" diff --git a/src/test/test_dir_handle_get.c b/src/test/test_dir_handle_get.c index 7f7a00abde..623d9e9b9d 100644 --- a/src/test/test_dir_handle_get.c +++ b/src/test/test_dir_handle_get.c @@ -32,7 +32,7 @@ #include "feature/nodelist/routerparse.h" #include "feature/nodelist/networkstatus.h" #include "core/proto/proto_http.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/stats/geoip_stats.h" #include "feature/dircache/dirserv.h" #include "feature/dirauth/dirvote.h" diff --git a/src/test/test_geoip.c b/src/test/test_geoip.c index 5e2849147b..6f9c39063b 100644 --- a/src/test/test_geoip.c +++ b/src/test/test_geoip.c @@ -10,7 +10,7 @@ #define GEOIP_PRIVATE #include "core/or/or.h" #include "app/config/config.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/stats/geoip_stats.h" #include "test/test.h" diff --git a/src/test/test_options.c b/src/test/test_options.c index a4de0e992a..f14e620eeb 100644 --- a/src/test/test_options.c +++ b/src/test/test_options.c @@ -8,7 +8,7 @@ #include "app/config/confparse.h" #include "app/config/config.h" #include "test/test.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #define ROUTERSET_PRIVATE #include "feature/nodelist/routerset.h" diff --git a/src/test/test_routerset.c b/src/test/test_routerset.c index 2017ef0050..fede419f0b 100644 --- a/src/test/test_routerset.c +++ b/src/test/test_routerset.c @@ -4,7 +4,7 @@ #define ROUTERSET_PRIVATE #include "core/or/or.h" -#include "feature/stats/geoip.h" +#include "lib/geoip/geoip.h" #include "feature/nodelist/routerset.h" #include "feature/nodelist/routerparse.h" #include "core/or/policies.h" |