aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-09-27 10:26:01 -0400
committerNick Mathewson <nickm@torproject.org>2018-09-27 10:26:01 -0400
commitc8f2a6d2fe17fb1c02116fddaa93ded0ce655af9 (patch)
treef44c26b004897d9d646069a0e3131263ba9ddc31 /src
parentfa32574bdb7381f02abc68ad917ad79f354938a4 (diff)
downloadtor-c8f2a6d2fe17fb1c02116fddaa93ded0ce655af9.tar.gz
tor-c8f2a6d2fe17fb1c02116fddaa93ded0ce655af9.zip
Extract the non-stats part of geoip into a new src/lib/geoip.
Diffstat (limited to 'src')
-rw-r--r--src/app/config/config.c2
-rw-r--r--src/app/main/main.c2
-rw-r--r--src/core/include.am2
-rw-r--r--src/core/mainloop/connection.c2
-rw-r--r--src/core/or/connection_or.c2
-rw-r--r--src/core/or/or.h4
-rw-r--r--src/core/or/policies.c2
-rw-r--r--src/feature/control/getinfo_geoip.c2
-rw-r--r--src/feature/nodelist/nodelist.c2
-rw-r--r--src/feature/nodelist/routerset.c2
-rw-r--r--src/feature/relay/router.c2
-rw-r--r--src/feature/stats/geoip_stats.c2
-rw-r--r--src/include.am1
-rw-r--r--src/lib/geoip/.may_include12
-rw-r--r--src/lib/geoip/country.h14
-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.am17
-rw-r--r--src/test/test_config.c2
-rw-r--r--src/test/test_dir_handle_get.c2
-rw-r--r--src/test/test_geoip.c2
-rw-r--r--src/test/test_options.c2
-rw-r--r--src/test/test_routerset.c2
23 files changed, 62 insertions, 28 deletions
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"