]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
relay: Disable relay_sys when the relay module is disabled
authorteor <teor@torproject.org>
Thu, 14 Nov 2019 06:27:06 +0000 (16:27 +1000)
committerteor <teor@torproject.org>
Thu, 14 Nov 2019 06:27:06 +0000 (16:27 +1000)
Closes ticket 32245.

changes/ticket32245 [new file with mode: 0644]
src/app/main/subsystem_list.c
src/core/include.am
src/feature/dirauth/dirauth_sys.h
src/feature/relay/relay_sys.h

diff --git a/changes/ticket32245 b/changes/ticket32245
new file mode 100644 (file)
index 0000000..fc79e74
--- /dev/null
@@ -0,0 +1,3 @@
+  o Code simplification and refactoring:
+    - Disable relay_sys when the relay module is disabled.
+      Closes ticket 32245.
index 4a40702e706bd214cbfc4feca2412dce7b6664d9..a343207c1c11db8027eeb66311eccc5d9aadc637 100644 (file)
@@ -18,7 +18,6 @@
 #include "core/or/or_sys.h"
 #include "core/or/orconn_event_sys.h"
 #include "feature/control/btrack_sys.h"
-#include "feature/relay/relay_sys.h"
 #include "lib/compress/compress_sys.h"
 #include "lib/crypt_ops/crypto_sys.h"
 #include "lib/err/torerr_sys.h"
@@ -33,6 +32,7 @@
 #include "lib/evloop/evloop_sys.h"
 
 #include "feature/dirauth/dirauth_sys.h"
+#include "feature/relay/relay_sys.h"
 
 #include <stddef.h>
 
@@ -66,7 +66,9 @@ const subsys_fns_t *tor_subsystems[] = {
   &sys_mainloop,
   &sys_or,
 
+#ifdef HAVE_MODULE_RELAY
   &sys_relay,
+#endif
 
 #ifdef HAVE_MODULE_DIRAUTH
   &sys_dirauth,
index 5cafc412108d3dec418b09c77acfe0888a4eacf4..868e3c49ddf91796075c67bdf4e21d7dae7f476a 100644 (file)
@@ -143,7 +143,6 @@ LIBTOR_APP_A_SOURCES =                              \
        src/feature/relay/dns.c                 \
        src/feature/relay/ext_orport.c          \
        src/feature/relay/onion_queue.c         \
-       src/feature/relay/relay_sys.c           \
        src/feature/relay/router.c              \
        src/feature/relay/routerkeys.c          \
        src/feature/relay/selftest.c            \
@@ -174,6 +173,7 @@ MODULE_RELAY_SOURCES =                                              \
        src/feature/relay/routermode.c                          \
        src/feature/relay/relay_config.c                        \
        src/feature/relay/relay_periodic.c                      \
+       src/feature/relay/relay_sys.c                           \
        src/feature/relay/transport_config.c
 
 # The Directory Authority module.
index 2d5a0cb3e7cf73c5445959964f92aec783cca5e5..86c8d8ba3eb009a6b87e64479ce5903e4ea0423f 100644 (file)
 #ifndef DIRAUTH_SYS_H
 #define DIRAUTH_SYS_H
 
+#ifdef HAVE_MODULE_DIRAUTH
+
 extern const struct subsys_fns_t sys_dirauth;
 
+#endif
+
 #endif /* !defined(DIRAUTH_SYS_H) */
index 32e21d90d892b2618f0550c3e4276ebb74f0884e..aa387369b593d57ed0ae60e68ef2fad02681cbce 100644 (file)
 #ifndef TOR_FEATURE_RELAY_RELAY_SYS_H
 #define TOR_FEATURE_RELAY_RELAY_SYS_H
 
+#ifdef HAVE_MODULE_RELAY
+
 extern const struct subsys_fns_t sys_relay;
 
+#endif
+
 #endif /* !defined(TOR_FEATURE_RELAY_RELAY_SYS_H) */