summaryrefslogtreecommitdiff
path: root/extra/networkmanager/repair-signals.patch
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-09-20 01:37:39 -0700
committerroot <root@rshg054.dnsready.net>2012-09-20 01:37:39 -0700
commit005a14f92ef5d35e4c47d970cb7e69367a835958 (patch)
treec9e998e38c83fe1d0947a0ceec528b45b4aaa1f1 /extra/networkmanager/repair-signals.patch
parente8f387c8a45ee846f01fed02259d061d2d6e8d3d (diff)
Thu Sep 20 01:37:13 PDT 2012
Diffstat (limited to 'extra/networkmanager/repair-signals.patch')
-rw-r--r--extra/networkmanager/repair-signals.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/extra/networkmanager/repair-signals.patch b/extra/networkmanager/repair-signals.patch
new file mode 100644
index 000000000..cf1319dc5
--- /dev/null
+++ b/extra/networkmanager/repair-signals.patch
@@ -0,0 +1,37 @@
+From 64342a313ef497fca8a4fb7567900d4a1460065f Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Thu, 13 Sep 2012 09:32:53 +0000
+Subject: core: wait until we daemonized before setting up signals (bgo #683932)
+
+If we mask signals before daemonizing, the daemon process will not be
+able to handle them, and thus would be unkillable with anything other
+than SIGKILL.
+---
+diff --git a/src/main.c b/src/main.c
+index 8bc6d3f..5b82cfa 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -401,10 +401,6 @@ main (int argc, char *argv[])
+ exit (1);
+ }
+
+- /* Set up unix signal handling */
+- if (!setup_signals ())
+- exit (1);
+-
+ /* Set locale to be able to use environment variables */
+ setlocale (LC_ALL, "");
+
+@@ -501,6 +497,10 @@ main (int argc, char *argv[])
+ wrote_pidfile = TRUE;
+ }
+
++ /* Set up unix signal handling - before creating threads, but after daemonizing! */
++ if (!setup_signals ())
++ exit (1);
++
+ if (g_fatal_warnings) {
+ GLogLevelFlags fatal_mask;
+
+--
+cgit v0.9.0.2-2-gbebe