aboutsummaryrefslogtreecommitdiffstats
path: root/src/charon/charon.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2011-04-12 11:20:25 +0200
committerMartin Willi <martin@revosec.ch>2011-04-15 10:07:13 +0200
commit3b71d3d033e70591d6857b4504d7577eaa630a12 (patch)
tree99ecc0123b2d2021b2caa0e08016526bfe9eae57 /src/charon/charon.c
parentfd3c12bf06a09c091d4bc57b5b3531a0148975f2 (diff)
downloadstrongswan-3b71d3d033e70591d6857b4504d7577eaa630a12.tar.bz2
strongswan-3b71d3d033e70591d6857b4504d7577eaa630a12.tar.xz
Reload strongswan.conf and plugins supporting reloading on SIGHUP
Diffstat (limited to 'src/charon/charon.c')
-rw-r--r--src/charon/charon.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/charon/charon.c b/src/charon/charon.c
index d1fff5bd9..dda09f66d 100644
--- a/src/charon/charon.c
+++ b/src/charon/charon.c
@@ -109,7 +109,16 @@ static void run()
{
case SIGHUP:
{
- DBG1(DBG_DMN, "signal of type SIGHUP received. Ignored");
+ DBG1(DBG_DMN, "signal of type SIGHUP received. Reloading "
+ "configuration");
+ if (lib->settings->load_files(lib->settings, NULL, FALSE))
+ {
+ lib->plugins->reload(lib->plugins, NULL);
+ }
+ else
+ {
+ DBG1(DBG_DMN, "reloading config failed, keeping old");
+ }
break;
}
case SIGINT: