]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Stub out some more functions in dirvote/*.h, fix compilation.
authorNick Mathewson <nickm@torproject.org>
Thu, 29 Aug 2019 13:50:38 +0000 (09:50 -0400)
committerNick Mathewson <nickm@torproject.org>
Thu, 29 Aug 2019 13:50:38 +0000 (09:50 -0400)
This fixes LTO compilation for Android and -O0 compilation in
general, when --disable-module-dirauth is provided.

Fixes bug 31552; bugfix on 0.4.1.1-alpha.

changes/bug31552 [new file with mode: 0644]
src/feature/dirauth/process_descs.h
src/feature/dirauth/reachability.h

diff --git a/changes/bug31552 b/changes/bug31552
new file mode 100644 (file)
index 0000000..fb33e14
--- /dev/null
@@ -0,0 +1,5 @@
+  o Minor bugfixes (compilation):
+    - Add more stub functions to fix compilation on Android with LTO, when
+      --disable-module-dirauth is used. Previously, these compilation
+      settings would make the compiler look for functions that didn't exist.
+      Fixes bug 31552; bugfix on 0.4.1.1-alpha.
index 001c866ebad5021db44a6349339f135aadc2165f..0da47c96c3ad922347ef6375119b85ac3cc0963a 100644 (file)
@@ -25,15 +25,35 @@ enum was_router_added_t dirserv_add_descriptor(routerinfo_t *ri,
                                                const char **msg,
                                                const char *source);
 
-int authdir_wants_to_reject_router(routerinfo_t *ri, const char **msg,
-                                   int complain,
-                                   int *valid_out);
 uint32_t dirserv_router_get_status(const routerinfo_t *router,
                                    const char **msg,
                                    int severity);
 void dirserv_set_node_flags_from_authoritative_status(node_t *node,
                                                       uint32_t authstatus);
 
+#ifdef HAVE_MODULE_DIRAUTH
 int dirserv_would_reject_router(const routerstatus_t *rs);
+int authdir_wants_to_reject_router(routerinfo_t *ri, const char **msg,
+                                   int complain,
+                                   int *valid_out);
+#else
+static inline int
+dirserv_would_reject_router(const routerstatus_t *rs)
+{
+  (void)rs;
+  return 0;
+}
+static inline int
+authdir_wants_to_reject_router(routerinfo_t *ri, const char **msg,
+                               int complain,
+                               int *valid_out)
+{
+  (void)ri;
+  (void)msg;
+  (void)complain;
+  (void)valid_out;
+  return 0;
+}
+#endif
 
 #endif /* !defined(TOR_RECV_UPLOADS_H) */
index 873a3f9a236a03f60704cf822f04f6dd3593eb41..0018c7f638134fd8e4028497b039bab79106b07a 100644 (file)
@@ -28,9 +28,21 @@ void dirserv_orconn_tls_done(const tor_addr_t *addr,
                              uint16_t or_port,
                              const char *digest_rcvd,
                              const struct ed25519_public_key_t *ed_id_rcvd);
-int dirserv_should_launch_reachability_test(const routerinfo_t *ri,
-                                            const routerinfo_t *ri_old);
 void dirserv_single_reachability_test(time_t now, routerinfo_t *router);
 void dirserv_test_reachability(time_t now);
 
+#ifdef HAVE_MODULE_DIRAUTH
+int dirserv_should_launch_reachability_test(const routerinfo_t *ri,
+                                            const routerinfo_t *ri_old);
+#else
+static inline int
+dirserv_should_launch_reachability_test(const routerinfo_t *ri,
+                                            const routerinfo_t *ri_old)
+{
+  (void)ri;
+  (void)ri_old;
+  return 0;
+}
+#endif
+
 #endif /* !defined(TOR_REACHABILITY_H) */