summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2014-07-09 18:36:20 +0200
committerDan Williams <dcbw@redhat.com>2014-08-14 17:08:14 -0500
commite47f55d375aac9ccaa9e6b0a95a0e1f4de07a6a4 (patch)
tree368322f0e4486071fe33f0f37892187cab4caaa0
parenta7a0660aee1c4e77d523b7943912f59b008edab8 (diff)
downloadNetworkManager-e47f55d375aac9ccaa9e6b0a95a0e1f4de07a6a4.tar.gz
core: add handler for supported signals
Signed-off-by: Thomas Haller <thaller@redhat.com>
-rw-r--r--src/main.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/main.c b/src/main.c
index 1975f33559..3eeab13f5b 100644
--- a/src/main.c
+++ b/src/main.c
@@ -64,6 +64,8 @@
#define NM_DEFAULT_PID_FILE NMRUNDIR "/NetworkManager.pid"
#define NM_DEFAULT_SYSTEM_STATE_FILE NMSTATEDIR "/NetworkManager.state"
+static gboolean _handle_signal (gpointer user_data);
+
/*
* Globals
*/
@@ -96,7 +98,7 @@ signal_handling_thread (void *arg)
break;
case SIGHUP:
/* Reread config stuff like system config files, VPN service files, etc */
- nm_log_info (LOGD_CORE, "caught signal %d, not supported yet.", signo);
+ g_idle_add (_handle_signal, GINT_TO_POINTER (signo));
break;
default:
nm_log_err (LOGD_CORE, "caught unexpected signal %d", signo);
@@ -217,6 +219,18 @@ done:
}
static gboolean
+_handle_signal (gpointer user_data)
+{
+ int signo = GPOINTER_TO_INT (user_data);
+
+ g_assert (signo == SIGHUP);
+
+ nm_log_info (LOGD_CORE, "caught signal %d, not supported yet.", signo);
+
+ return G_SOURCE_REMOVE;
+}
+
+static gboolean
parse_state_file (const char *filename,
gboolean *net_enabled,
gboolean *wifi_enabled,