aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-06-21 09:53:08 -0400
committerNick Mathewson <nickm@torproject.org>2018-06-21 10:47:11 -0400
commit2cfcb7b364541c27749ae0df73eabd7a56797f93 (patch)
tree1fb03761e4631f1d5edd893fc9164a49ff8981b6
parentb2346b12019c45288bbae3bd009fe0bafe80ff58 (diff)
downloadtor-2cfcb7b364541c27749ae0df73eabd7a56797f93.tar.gz
tor-2cfcb7b364541c27749ae0df73eabd7a56797f93.zip
Extract error functionality into a new lowest-level library.
-rw-r--r--.gitignore4
-rw-r--r--Makefile.am2
-rw-r--r--src/common/include.am4
-rw-r--r--src/include.am3
-rw-r--r--src/lib/err/backtrace.c (renamed from src/common/backtrace.c)0
-rw-r--r--src/lib/err/backtrace.h (renamed from src/common/backtrace.h)0
-rw-r--r--src/lib/err/include.am17
-rw-r--r--src/lib/err/torerr.c (renamed from src/common/torerr.c)0
-rw-r--r--src/lib/err/torerr.h (renamed from src/common/torerr.h)0
-rw-r--r--src/rust/build.rs3
10 files changed, 27 insertions, 6 deletions
diff --git a/.gitignore b/.gitignore
index b3b13694af..517022399b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -166,6 +166,10 @@ uptime-*.json
/src/ext/keccak-tiny/libkeccak-tiny.a
/src/ext/keccak-tiny/libkeccak-tiny.lib
+# /src/lib
+/src/lib/libtor-err.a
+/src/lib/libtor-err-testing.a
+
# /src/or/
/src/or/Makefile
/src/or/Makefile.in
diff --git a/Makefile.am b/Makefile.am
index 579b9a089c..6c60de111c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -40,12 +40,14 @@ endif
# "Common" libraries used to link tor's utility code.
TOR_UTIL_LIBS = \
src/common/libor.a \
+ src/lib/libtor-err.a \
src/common/libor-ctime.a
# Variants of the above for linking the testing variant of tor (for coverage
# and tests)
TOR_UTIL_TESTING_LIBS = \
src/common/libor-testing.a \
+ src/lib/libtor-err-testing.a \
src/common/libor-ctime-testing.a
# Internal crypto libraries used in Tor
diff --git a/src/common/include.am b/src/common/include.am
index 8afec9c054..5337034861 100644
--- a/src/common/include.am
+++ b/src/common/include.am
@@ -82,7 +82,6 @@ src_common_libor_ctime_testing_a_CFLAGS = @CFLAGS_CONSTTIME@ $(TEST_CFLAGS)
LIBOR_A_SRC = \
src/common/address.c \
src/common/address_set.c \
- src/common/backtrace.c \
src/common/buffers.c \
src/common/compat.c \
src/common/compat_threads.c \
@@ -99,7 +98,6 @@ LIBOR_A_SRC = \
src/common/sandbox.c \
src/common/storagedir.c \
src/common/token_bucket.c \
- src/common/torerr.c \
src/common/workqueue.c \
$(libor_extra_source) \
$(threads_impl_source) \
@@ -161,7 +159,6 @@ src_common_libor_event_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
COMMONHEADERS = \
src/common/address.h \
src/common/address_set.h \
- src/common/backtrace.h \
src/common/buffers.h \
src/common/buffers_tls.h \
src/common/aes.h \
@@ -203,7 +200,6 @@ COMMONHEADERS = \
src/common/testsupport.h \
src/common/timers.h \
src/common/token_bucket.h \
- src/common/torerr.h \
src/common/torint.h \
src/common/torlog.h \
src/common/tortls.h \
diff --git a/src/include.am b/src/include.am
index 90ecf90d45..424481485f 100644
--- a/src/include.am
+++ b/src/include.am
@@ -1,6 +1,7 @@
include src/ext/include.am
-include src/trunnel/include.am
+include src/lib/err/include.am
include src/common/include.am
+include src/trunnel/include.am
include src/or/include.am
include src/rust/include.am
include src/test/include.am
diff --git a/src/common/backtrace.c b/src/lib/err/backtrace.c
index d83cbba0e8..d83cbba0e8 100644
--- a/src/common/backtrace.c
+++ b/src/lib/err/backtrace.c
diff --git a/src/common/backtrace.h b/src/lib/err/backtrace.h
index 0a145fc92d..0a145fc92d 100644
--- a/src/common/backtrace.h
+++ b/src/lib/err/backtrace.h
diff --git a/src/lib/err/include.am b/src/lib/err/include.am
new file mode 100644
index 0000000000..257ba3004b
--- /dev/null
+++ b/src/lib/err/include.am
@@ -0,0 +1,17 @@
+
+noinst_LIBRARIES += src/lib/libtor-err.a
+
+if UNITTESTS_ENABLED
+noinst_LIBRARIES += src/lib/libtor-err-testing.a
+endif
+
+src_lib_libtor_err_a_SOURCES = \
+ src/lib/err/backtrace.c \
+ src/lib/err/torerr.c
+
+src_lib_libtor_err_testing_a_SOURCES = \
+ $(src_lib_libtor_err_a_SOURCES)
+
+noinst_HEADERS += \
+ src/lib/err/backtrace.h \
+ src/lib/err/torerr.h
diff --git a/src/common/torerr.c b/src/lib/err/torerr.c
index 0e0c4db355..0e0c4db355 100644
--- a/src/common/torerr.c
+++ b/src/lib/err/torerr.c
diff --git a/src/common/torerr.h b/src/lib/err/torerr.h
index 10d9f481c0..10d9f481c0 100644
--- a/src/common/torerr.h
+++ b/src/lib/err/torerr.h
diff --git a/src/rust/build.rs b/src/rust/build.rs
index b943aa5535..32000b12f5 100644
--- a/src/rust/build.rs
+++ b/src/rust/build.rs
@@ -138,9 +138,9 @@ pub fn main() {
cfg.from_cflags("TOR_LDFLAGS_openssl");
cfg.from_cflags("TOR_LDFLAGS_libevent");
+ cfg.link_relpath("src/lib");
cfg.link_relpath("src/common");
cfg.link_relpath("src/ext/keccak-tiny");
- cfg.link_relpath("src/ext/keccak-tiny");
cfg.link_relpath("src/ext/ed25519/ref10");
cfg.link_relpath("src/ext/ed25519/donna");
cfg.link_relpath("src/trunnel");
@@ -152,6 +152,7 @@ pub fn main() {
cfg.component("or-crypto-testing");
cfg.component("or-ctime-testing");
cfg.component("or-testing");
+ cfg.component("tor-err-testing");
cfg.component("or-event-testing");
cfg.component("or-ctime-testing");
cfg.component("curve25519_donna");