]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
sr: Static inline functions if no dirauth module
authorDavid Goulet <dgoulet@torproject.org>
Tue, 24 Apr 2018 19:28:47 +0000 (15:28 -0400)
committerDavid Goulet <dgoulet@torproject.org>
Fri, 27 Apr 2018 15:40:44 +0000 (11:40 -0400)
Add static inline dirauth public functions used outside of the dirauth module
so they can be seen by the tor code but simply do nothing.

Signed-off-by: David Goulet <dgoulet@torproject.org>
src/or/dirauth/shared_random.h

index d1b2ac2e256e0c69c72471663e481a8cc0a8d1b2..1778ce8f09bd9ae3f16f28ecf1da08b150ebafae 100644 (file)
@@ -101,11 +101,40 @@ typedef struct sr_commit_t {
 
 /* API */
 
-/* Public methods: */
+/* Public methods used _outside_ of the module.
+ *
+ * We need to nullify them if the module is disabled. */
+#ifdef HAVE_MODULE_DIRAUTH
 
 int sr_init(int save_to_disk);
 void sr_save_and_cleanup(void);
 void sr_act_post_consensus(const networkstatus_t *consensus);
+
+#else /* HAVE_MODULE_DIRAUTH */
+
+static inline int
+sr_init(int save_to_disk)
+{
+  (void) save_to_disk;
+  /* Always return success. */
+  return 0;
+}
+
+static inline void
+sr_save_and_cleanup(void)
+{
+}
+
+static inline void
+sr_act_post_consensus(const networkstatus_t *consensus)
+{
+  (void) consensus;
+}
+
+#endif /* HAVE_MODULE_DIRAUTH */
+
+/* Public methods used only by dirauth code. */
+
 void sr_handle_received_commits(smartlist_t *commits,
                                 crypto_pk_t *voter_key);
 sr_commit_t *sr_parse_commit(const smartlist_t *args);