[tor-commits] [tor/master] Split crypto and tls libraries into directories
nickm at torproject.org
nickm at torproject.org
Thu Jun 21 17:57:19 UTC 2018
commit 25ccfff86a5b29c9c1ec9b3d01fe1dc796e9afa0
Author: Nick Mathewson <nickm at torproject.org>
Date: Thu Jun 21 12:46:11 2018 -0400
Split crypto and tls libraries into directories
I am calling the crypto library "crypt_ops", since I want
higher-level crypto things to be separated from lower-level ones.
This library will hold only the low-level ones, once we have it
refactored.
---
.gitignore | 7 ++--
Makefile.am | 6 ++-
src/common/include.am | 43 ---------------------
src/include.am | 2 +
src/{common => lib/crypt_ops}/aes.c | 0
src/{common => lib/crypt_ops}/aes.h | 0
src/{common => lib/crypt_ops}/compat_openssl.h | 0
src/{common => lib/crypt_ops}/crypto.c | 0
src/{common => lib/crypt_ops}/crypto.h | 0
src/{common => lib/crypt_ops}/crypto_curve25519.c | 0
src/{common => lib/crypt_ops}/crypto_curve25519.h | 0
src/{common => lib/crypt_ops}/crypto_dh.c | 0
src/{common => lib/crypt_ops}/crypto_dh.h | 0
src/{common => lib/crypt_ops}/crypto_digest.c | 0
src/{common => lib/crypt_ops}/crypto_digest.h | 0
src/{common => lib/crypt_ops}/crypto_ed25519.c | 0
src/{common => lib/crypt_ops}/crypto_ed25519.h | 0
src/{common => lib/crypt_ops}/crypto_format.c | 0
src/{common => lib/crypt_ops}/crypto_format.h | 0
src/{common => lib/crypt_ops}/crypto_hkdf.c | 0
src/{common => lib/crypt_ops}/crypto_hkdf.h | 0
src/{common => lib/crypt_ops}/crypto_openssl_mgt.c | 0
src/{common => lib/crypt_ops}/crypto_openssl_mgt.h | 0
src/{common => lib/crypt_ops}/crypto_pwbox.c | 0
src/{common => lib/crypt_ops}/crypto_pwbox.h | 0
src/{common => lib/crypt_ops}/crypto_rand.c | 0
src/{common => lib/crypt_ops}/crypto_rand.h | 0
src/{common => lib/crypt_ops}/crypto_rsa.c | 0
src/{common => lib/crypt_ops}/crypto_rsa.h | 0
src/{common => lib/crypt_ops}/crypto_s2k.c | 0
src/{common => lib/crypt_ops}/crypto_s2k.h | 0
src/{common => lib/crypt_ops}/crypto_util.c | 0
src/{common => lib/crypt_ops}/crypto_util.h | 0
src/lib/crypt_ops/include.am | 44 ++++++++++++++++++++++
src/{common => lib/tls}/buffers_tls.c | 0
src/{common => lib/tls}/buffers_tls.h | 0
src/{common => lib/tls}/ciphers.inc | 0
src/lib/tls/include.am | 20 ++++++++++
src/{common => lib/tls}/tortls.c | 0
src/{common => lib/tls}/tortls.h | 0
src/rust/build.rs | 2 +-
41 files changed, 75 insertions(+), 49 deletions(-)
diff --git a/.gitignore b/.gitignore
index 2716bac83..d797f4f53 100644
--- a/.gitignore
+++ b/.gitignore
@@ -141,9 +141,6 @@ uptime-*.json
/src/common/libor-ctime.a
/src/common/libor-ctime-testing.a
/src/common/libor-ctime.lib
-/src/common/libor-crypto.a
-/src/common/libor-crypto-testing.a
-/src/common/libor-crypto.lib
/src/common/libor-event.a
/src/common/libor-event-testing.a
/src/common/libor-event.lib
@@ -169,10 +166,14 @@ uptime-*.json
# /src/lib
/src/lib/libtor-compress.a
/src/lib/libtor-compress-testing.a
+/src/lib/libtor-crypt-ops.a
+/src/lib/libtor-crypt-ops-testing.a
/src/lib/libtor-ctime.a
/src/lib/libtor-ctime-testing.a
/src/lib/libtor-err.a
/src/lib/libtor-err-testing.a
+/src/lib/libtor-tls.a
+/src/lib/libtor-tls-testing.a
/src/lib/libtor-trace.a
# /src/or/
diff --git a/Makefile.am b/Makefile.am
index 62c0e2a4a..4ccee670e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -52,14 +52,16 @@ TOR_UTIL_TESTING_LIBS = \
# Internal crypto libraries used in Tor
TOR_CRYPTO_LIBS = \
- src/common/libor-crypto.a \
+ src/lib/libtor-tls.a \
+ src/lib/libtor-crypt-ops.a \
$(LIBKECCAK_TINY) \
$(LIBDONNA)
# Variants of the above for linking the testing variant of tor (for coverage
# and tests)
TOR_CRYPTO_TESTING_LIBS = \
- src/common/libor-crypto-testing.a \
+ src/lib/libtor-tls-testing.a \
+ src/lib/libtor-crypt-ops-testing.a \
$(LIBKECCAK_TINY) \
$(LIBDONNA)
diff --git a/src/common/include.am b/src/common/include.am
index 2869c2ac9..fb5472f3b 100644
--- a/src/common/include.am
+++ b/src/common/include.am
@@ -1,13 +1,11 @@
noinst_LIBRARIES += \
src/common/libor.a \
- src/common/libor-crypto.a \
src/common/libor-event.a
if UNITTESTS_ENABLED
noinst_LIBRARIES += \
src/common/libor-testing.a \
- src/common/libor-crypto-testing.a \
src/common/libor-event-testing.a
endif
@@ -83,24 +81,6 @@ LIBOR_A_SRC = \
src/common/src_common_libor_testing_a-log.$(OBJEXT) \
src/common/log.$(OBJEXT): micro-revision.i
-LIBOR_CRYPTO_A_SRC = \
- src/common/aes.c \
- src/common/buffers_tls.c \
- src/common/crypto.c \
- src/common/crypto_dh.c \
- src/common/crypto_digest.c \
- src/common/crypto_format.c \
- src/common/crypto_hkdf.c \
- src/common/crypto_openssl_mgt.c \
- src/common/crypto_pwbox.c \
- src/common/crypto_rand.c \
- src/common/crypto_rsa.c \
- src/common/crypto_s2k.c \
- src/common/crypto_util.c \
- src/common/tortls.c \
- src/common/crypto_curve25519.c \
- src/common/crypto_ed25519.c
-
LIBOR_EVENT_A_SRC = \
src/common/compat_libevent.c \
src/common/procmon.c \
@@ -108,53 +88,31 @@ LIBOR_EVENT_A_SRC = \
src/ext/timeouts/timeout.c
src_common_libor_a_SOURCES = $(LIBOR_A_SRC)
-src_common_libor_crypto_a_SOURCES = $(LIBOR_CRYPTO_A_SRC)
src_common_libor_event_a_SOURCES = $(LIBOR_EVENT_A_SRC)
if UNITTESTS_ENABLED
src_common_libor_testing_a_SOURCES = $(LIBOR_A_SRC)
-src_common_libor_crypto_testing_a_SOURCES = $(LIBOR_CRYPTO_A_SRC)
src_common_libor_event_testing_a_SOURCES = $(LIBOR_EVENT_A_SRC)
else
src_common_libor_testing_a_SOURCES =
-src_common_libor_crypto_testing_a_SOURCES =
src_common_libor_event_testing_a_SOURCES =
endif
src_common_libor_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS)
-src_common_libor_crypto_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS)
src_common_libor_event_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS)
src_common_libor_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
-src_common_libor_crypto_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
src_common_libor_event_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
COMMONHEADERS = \
src/common/address.h \
src/common/address_set.h \
src/common/buffers.h \
- src/common/buffers_tls.h \
- src/common/aes.h \
- src/common/ciphers.inc \
src/common/compat.h \
src/common/compat_libevent.h \
- src/common/compat_openssl.h \
src/common/compat_threads.h \
src/common/compat_time.h \
src/common/confline.h \
src/common/container.h \
- src/common/crypto.h \
- src/common/crypto_dh.h \
- src/common/crypto_digest.h \
- src/common/crypto_curve25519.h \
- src/common/crypto_ed25519.h \
- src/common/crypto_format.h \
- src/common/crypto_hkdf.h \
- src/common/crypto_openssl_mgt.h \
- src/common/crypto_pwbox.h \
- src/common/crypto_rand.h \
- src/common/crypto_rsa.h \
- src/common/crypto_s2k.h \
- src/common/crypto_util.h \
src/common/handles.h \
src/common/memarea.h \
src/common/linux_syscalls.inc \
@@ -165,7 +123,6 @@ COMMONHEADERS = \
src/common/timers.h \
src/common/token_bucket.h \
src/common/torlog.h \
- src/common/tortls.h \
src/common/util.h \
src/common/util_bug.h \
src/common/util_format.h \
diff --git a/src/include.am b/src/include.am
index d4b348b4e..e82943f73 100644
--- a/src/include.am
+++ b/src/include.am
@@ -3,6 +3,8 @@ include src/lib/err/include.am
include src/lib/cc/include.am
include src/lib/ctime/include.am
include src/lib/compress/include.am
+include src/lib/crypt_ops/include.am
+include src/lib/tls/include.am
include src/lib/trace/include.am
include src/common/include.am
include src/trunnel/include.am
diff --git a/src/common/aes.c b/src/lib/crypt_ops/aes.c
similarity index 100%
rename from src/common/aes.c
rename to src/lib/crypt_ops/aes.c
diff --git a/src/common/aes.h b/src/lib/crypt_ops/aes.h
similarity index 100%
rename from src/common/aes.h
rename to src/lib/crypt_ops/aes.h
diff --git a/src/common/compat_openssl.h b/src/lib/crypt_ops/compat_openssl.h
similarity index 100%
rename from src/common/compat_openssl.h
rename to src/lib/crypt_ops/compat_openssl.h
diff --git a/src/common/crypto.c b/src/lib/crypt_ops/crypto.c
similarity index 100%
rename from src/common/crypto.c
rename to src/lib/crypt_ops/crypto.c
diff --git a/src/common/crypto.h b/src/lib/crypt_ops/crypto.h
similarity index 100%
rename from src/common/crypto.h
rename to src/lib/crypt_ops/crypto.h
diff --git a/src/common/crypto_curve25519.c b/src/lib/crypt_ops/crypto_curve25519.c
similarity index 100%
rename from src/common/crypto_curve25519.c
rename to src/lib/crypt_ops/crypto_curve25519.c
diff --git a/src/common/crypto_curve25519.h b/src/lib/crypt_ops/crypto_curve25519.h
similarity index 100%
rename from src/common/crypto_curve25519.h
rename to src/lib/crypt_ops/crypto_curve25519.h
diff --git a/src/common/crypto_dh.c b/src/lib/crypt_ops/crypto_dh.c
similarity index 100%
rename from src/common/crypto_dh.c
rename to src/lib/crypt_ops/crypto_dh.c
diff --git a/src/common/crypto_dh.h b/src/lib/crypt_ops/crypto_dh.h
similarity index 100%
rename from src/common/crypto_dh.h
rename to src/lib/crypt_ops/crypto_dh.h
diff --git a/src/common/crypto_digest.c b/src/lib/crypt_ops/crypto_digest.c
similarity index 100%
rename from src/common/crypto_digest.c
rename to src/lib/crypt_ops/crypto_digest.c
diff --git a/src/common/crypto_digest.h b/src/lib/crypt_ops/crypto_digest.h
similarity index 100%
rename from src/common/crypto_digest.h
rename to src/lib/crypt_ops/crypto_digest.h
diff --git a/src/common/crypto_ed25519.c b/src/lib/crypt_ops/crypto_ed25519.c
similarity index 100%
rename from src/common/crypto_ed25519.c
rename to src/lib/crypt_ops/crypto_ed25519.c
diff --git a/src/common/crypto_ed25519.h b/src/lib/crypt_ops/crypto_ed25519.h
similarity index 100%
rename from src/common/crypto_ed25519.h
rename to src/lib/crypt_ops/crypto_ed25519.h
diff --git a/src/common/crypto_format.c b/src/lib/crypt_ops/crypto_format.c
similarity index 100%
rename from src/common/crypto_format.c
rename to src/lib/crypt_ops/crypto_format.c
diff --git a/src/common/crypto_format.h b/src/lib/crypt_ops/crypto_format.h
similarity index 100%
rename from src/common/crypto_format.h
rename to src/lib/crypt_ops/crypto_format.h
diff --git a/src/common/crypto_hkdf.c b/src/lib/crypt_ops/crypto_hkdf.c
similarity index 100%
rename from src/common/crypto_hkdf.c
rename to src/lib/crypt_ops/crypto_hkdf.c
diff --git a/src/common/crypto_hkdf.h b/src/lib/crypt_ops/crypto_hkdf.h
similarity index 100%
rename from src/common/crypto_hkdf.h
rename to src/lib/crypt_ops/crypto_hkdf.h
diff --git a/src/common/crypto_openssl_mgt.c b/src/lib/crypt_ops/crypto_openssl_mgt.c
similarity index 100%
rename from src/common/crypto_openssl_mgt.c
rename to src/lib/crypt_ops/crypto_openssl_mgt.c
diff --git a/src/common/crypto_openssl_mgt.h b/src/lib/crypt_ops/crypto_openssl_mgt.h
similarity index 100%
rename from src/common/crypto_openssl_mgt.h
rename to src/lib/crypt_ops/crypto_openssl_mgt.h
diff --git a/src/common/crypto_pwbox.c b/src/lib/crypt_ops/crypto_pwbox.c
similarity index 100%
rename from src/common/crypto_pwbox.c
rename to src/lib/crypt_ops/crypto_pwbox.c
diff --git a/src/common/crypto_pwbox.h b/src/lib/crypt_ops/crypto_pwbox.h
similarity index 100%
rename from src/common/crypto_pwbox.h
rename to src/lib/crypt_ops/crypto_pwbox.h
diff --git a/src/common/crypto_rand.c b/src/lib/crypt_ops/crypto_rand.c
similarity index 100%
rename from src/common/crypto_rand.c
rename to src/lib/crypt_ops/crypto_rand.c
diff --git a/src/common/crypto_rand.h b/src/lib/crypt_ops/crypto_rand.h
similarity index 100%
rename from src/common/crypto_rand.h
rename to src/lib/crypt_ops/crypto_rand.h
diff --git a/src/common/crypto_rsa.c b/src/lib/crypt_ops/crypto_rsa.c
similarity index 100%
rename from src/common/crypto_rsa.c
rename to src/lib/crypt_ops/crypto_rsa.c
diff --git a/src/common/crypto_rsa.h b/src/lib/crypt_ops/crypto_rsa.h
similarity index 100%
rename from src/common/crypto_rsa.h
rename to src/lib/crypt_ops/crypto_rsa.h
diff --git a/src/common/crypto_s2k.c b/src/lib/crypt_ops/crypto_s2k.c
similarity index 100%
rename from src/common/crypto_s2k.c
rename to src/lib/crypt_ops/crypto_s2k.c
diff --git a/src/common/crypto_s2k.h b/src/lib/crypt_ops/crypto_s2k.h
similarity index 100%
rename from src/common/crypto_s2k.h
rename to src/lib/crypt_ops/crypto_s2k.h
diff --git a/src/common/crypto_util.c b/src/lib/crypt_ops/crypto_util.c
similarity index 100%
rename from src/common/crypto_util.c
rename to src/lib/crypt_ops/crypto_util.c
diff --git a/src/common/crypto_util.h b/src/lib/crypt_ops/crypto_util.h
similarity index 100%
rename from src/common/crypto_util.h
rename to src/lib/crypt_ops/crypto_util.h
diff --git a/src/lib/crypt_ops/include.am b/src/lib/crypt_ops/include.am
new file mode 100644
index 000000000..b881c689d
--- /dev/null
+++ b/src/lib/crypt_ops/include.am
@@ -0,0 +1,44 @@
+
+noinst_LIBRARIES += src/lib/libtor-crypt-ops.a
+
+if UNITTESTS_ENABLED
+noinst_LIBRARIES += src/lib/libtor-crypt-ops-testing.a
+endif
+
+src_lib_libtor_crypt_ops_a_SOURCES = \
+ src/lib/crypt_ops/aes.c \
+ src/lib/crypt_ops/crypto.c \
+ src/lib/crypt_ops/crypto_curve25519.c \
+ src/lib/crypt_ops/crypto_dh.c \
+ src/lib/crypt_ops/crypto_digest.c \
+ src/lib/crypt_ops/crypto_ed25519.c \
+ src/lib/crypt_ops/crypto_format.c \
+ src/lib/crypt_ops/crypto_hkdf.c \
+ src/lib/crypt_ops/crypto_openssl_mgt.c \
+ src/lib/crypt_ops/crypto_pwbox.c \
+ src/lib/crypt_ops/crypto_rand.c \
+ src/lib/crypt_ops/crypto_rsa.c \
+ src/lib/crypt_ops/crypto_s2k.c \
+ src/lib/crypt_ops/crypto_util.c
+
+src_lib_libtor_crypt_ops_testing_a_SOURCES = \
+ $(src_lib_libtor_crypt_ops_a_SOURCES)
+src_lib_libtor_crypt_ops_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS)
+src_lib_libtor_crypt_ops_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
+
+noinst_HEADERS += \
+ src/lib/crypt_ops/aes.h \
+ src/lib/crypt_ops/compat_openssl.h \
+ src/lib/crypt_ops/crypto_curve25519.h \
+ src/lib/crypt_ops/crypto_dh.h \
+ src/lib/crypt_ops/crypto_digest.h \
+ src/lib/crypt_ops/crypto_ed25519.h \
+ src/lib/crypt_ops/crypto_format.h \
+ src/lib/crypt_ops/crypto.h \
+ src/lib/crypt_ops/crypto_hkdf.h \
+ src/lib/crypt_ops/crypto_openssl_mgt.h \
+ src/lib/crypt_ops/crypto_pwbox.h \
+ src/lib/crypt_ops/crypto_rand.h \
+ src/lib/crypt_ops/crypto_rsa.h \
+ src/lib/crypt_ops/crypto_s2k.h \
+ src/lib/crypt_ops/crypto_util.h
diff --git a/src/common/buffers_tls.c b/src/lib/tls/buffers_tls.c
similarity index 100%
rename from src/common/buffers_tls.c
rename to src/lib/tls/buffers_tls.c
diff --git a/src/common/buffers_tls.h b/src/lib/tls/buffers_tls.h
similarity index 100%
rename from src/common/buffers_tls.h
rename to src/lib/tls/buffers_tls.h
diff --git a/src/common/ciphers.inc b/src/lib/tls/ciphers.inc
similarity index 100%
rename from src/common/ciphers.inc
rename to src/lib/tls/ciphers.inc
diff --git a/src/lib/tls/include.am b/src/lib/tls/include.am
new file mode 100644
index 000000000..b3b013f4d
--- /dev/null
+++ b/src/lib/tls/include.am
@@ -0,0 +1,20 @@
+
+noinst_LIBRARIES += src/lib/libtor-tls.a
+
+if UNITTESTS_ENABLED
+noinst_LIBRARIES += src/lib/libtor-tls-testing.a
+endif
+
+src_lib_libtor_tls_a_SOURCES = \
+ src/lib/tls/buffers_tls.c \
+ src/lib/tls/tortls.c
+
+src_lib_libtor_tls_testing_a_SOURCES = \
+ $(src_lib_libtor_tls_a_SOURCES)
+src_lib_libtor_tls_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS)
+src_lib_libtor_tls_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
+
+noinst_HEADERS += \
+ src/lib/tls/ciphers.inc \
+ src/lib/tls/buffers_tls.h \
+ src/lib/tls/tortls.h
diff --git a/src/common/tortls.c b/src/lib/tls/tortls.c
similarity index 100%
rename from src/common/tortls.c
rename to src/lib/tls/tortls.c
diff --git a/src/common/tortls.h b/src/lib/tls/tortls.h
similarity index 100%
rename from src/common/tortls.h
rename to src/lib/tls/tortls.h
diff --git a/src/rust/build.rs b/src/rust/build.rs
index f9b40689f..8b0ea8ed6 100644
--- a/src/rust/build.rs
+++ b/src/rust/build.rs
@@ -149,7 +149,7 @@ pub fn main() {
// will have dependencies on all the other rust packages that
// tor uses. We must be careful with factoring and dependencies
// moving forward!
- cfg.component("or-crypto-testing");
+ cfg.component("tor-crypt-ops-testing");
cfg.component("or-testing");
cfg.component("tor-err-testing");
cfg.component("or-event-testing");
More information about the tor-commits
mailing list