[tor-commits] [tor/master] When RunAsDaemon is set, crypto_postfork() as needed

nickm at torproject.org nickm at torproject.org
Wed Sep 5 00:47:13 UTC 2018


commit 4f300d547d65e50ac1fd635f8b22714c1544ba33
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Aug 8 16:50:23 2018 -0400

    When RunAsDaemon is set, crypto_postfork() as needed
---
 src/app/config/config.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/app/config/config.c b/src/app/config/config.c
index 1b1889779..eb935fd4e 100644
--- a/src/app/config/config.c
+++ b/src/app/config/config.c
@@ -81,6 +81,7 @@
 #include "core/mainloop/cpuworker.h"
 #include "lib/crypt_ops/crypto_rand.h"
 #include "lib/crypt_ops/crypto_util.h"
+#include "lib/crypt_ops/crypto_init.h"
 #include "feature/dircache/dirserv.h"
 #include "feature/relay/dns.h"
 #include "core/or/dos.h"
@@ -2026,7 +2027,9 @@ options_act(const or_options_t *old_options)
   /* Finish backgrounding the process */
   if (options->RunAsDaemon) {
     /* We may be calling this for the n'th time (on SIGHUP), but it's safe. */
-    finish_daemon(options->DataDirectory);
+    int forked = finish_daemon(options->DataDirectory);
+    if (forked)
+      crypto_postfork();
   }
 
   /* See whether we need to enable/disable our once-a-second timer. */





More information about the tor-commits mailing list