Browse Source

Merge remote-tracking branch 'origin/maint-0.2.5'

Nick Mathewson 9 years ago
parent
commit
0edb9b0492

+ 3 - 0
changes/bug12730-systemd-verify-config

@@ -0,0 +1,3 @@
+  o Distribution:
+    - Verify configuration file via ExecStartPre in the systemd unit file.
+      Patch from intrigeri; resolves ticket 12730.

+ 9 - 0
changes/bug12731-systemd-no-run-as-daemon

@@ -0,0 +1,9 @@
+  o Distribution:
+    - Explicitly disable RunAsDaemon in the systemd unit file.
+      Our current systemd unit uses "Type = simple", so systemd does
+      not expect tor to fork. If the user has "RunAsDaemon 1" in their
+      torrc, then things won't work as expected. This is e.g. the case
+      on Debian (and derivatives), since there we pass
+      "--defaults-torrc /usr/share/tor/tor-service-defaults-torrc"
+      (that contains "RunAsDaemon 1") by default.
+      Patch by intrigeri; resolves ticket 12731.

+ 4 - 1
contrib/dist/tor.service.in

@@ -4,7 +4,10 @@ After = syslog.target network.target nss-lookup.target
 
 [Service]
 Type = simple
-ExecStart = @BINDIR@/tor -f @CONFDIR@/torrc
+ExecStartPre = @BINDIR@/tor -f @CONFDIR@/torrc --verify-config
+# A torrc that has "RunAsDaemon 1" won't work with the "simple" service type;
+# let's explicitly override it.
+ExecStart = @BINDIR@/tor -f @CONFDIR@/torrc --RunAsDaemon 0
 ExecReload = /bin/kill -HUP ${MAINPID}
 KillSignal = SIGINT
 TimeoutSec = 30