starter: Migrated logging to libstrongswan.
This commit is contained in:
+18
-17
@@ -23,11 +23,11 @@
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include <freeswan.h>
|
||||
#include <library.h>
|
||||
#include <debug.h>
|
||||
|
||||
#include "../pluto/constants.h"
|
||||
#include "../pluto/defs.h"
|
||||
#include "../pluto/log.h"
|
||||
|
||||
#include "confread.h"
|
||||
#include "invokecharon.h"
|
||||
@@ -49,19 +49,19 @@ void starter_charon_sigchild(pid_t pid, int status)
|
||||
if (status == SS_RC_LIBSTRONGSWAN_INTEGRITY ||
|
||||
status == SS_RC_DAEMON_INTEGRITY)
|
||||
{
|
||||
plog("charon has quit: integrity test of %s failed",
|
||||
(status == 64) ? "libstrongswan" : "charon");
|
||||
DBG1(DBG_APP, "charon has quit: integrity test of %s failed",
|
||||
(status == 64) ? "libstrongswan" : "charon");
|
||||
_stop_requested = 1;
|
||||
}
|
||||
else if (status == SS_RC_INITIALIZATION_FAILED)
|
||||
{
|
||||
plog("charon has quit: initialization failed");
|
||||
DBG1(DBG_APP, "charon has quit: initialization failed");
|
||||
_stop_requested = 1;
|
||||
}
|
||||
if (!_stop_requested)
|
||||
{
|
||||
plog("charon has died -- restart scheduled (%dsec)"
|
||||
, CHARON_RESTART_DELAY);
|
||||
DBG1(DBG_APP, "charon has died -- restart scheduled (%dsec)",
|
||||
CHARON_RESTART_DELAY);
|
||||
alarm(CHARON_RESTART_DELAY); // restart in 5 sec
|
||||
}
|
||||
unlink(CHARON_PID_FILE);
|
||||
@@ -91,7 +91,7 @@ int starter_stop_charon (void)
|
||||
else if (i == 40)
|
||||
{
|
||||
kill(pid, SIGKILL);
|
||||
plog("starter_stop_charon(): charon does not respond, sending KILL");
|
||||
DBG1(DBG_APP, "starter_stop_charon(): charon does not respond, sending KILL");
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -101,15 +101,15 @@ int starter_stop_charon (void)
|
||||
}
|
||||
if (_charon_pid == 0)
|
||||
{
|
||||
plog("charon stopped after %d ms", 200*i);
|
||||
DBG1(DBG_APP, "charon stopped after %d ms", 200*i);
|
||||
return 0;
|
||||
}
|
||||
plog("starter_stop_charon(): can't stop charon !!!");
|
||||
DBG1(DBG_APP, "starter_stop_charon(): can't stop charon !!!");
|
||||
return -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
plog("stater_stop_charon(): charon was not started...");
|
||||
DBG1(DBG_APP, "stater_stop_charon(): charon was not started...");
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
@@ -175,7 +175,7 @@ int starter_start_charon (starter_config_t *cfg, bool no_fork, bool attach_gdb)
|
||||
|
||||
if (_charon_pid)
|
||||
{
|
||||
plog("starter_start_charon(): charon already started...");
|
||||
DBG1(DBG_APP, "starter_start_charon(): charon already started...");
|
||||
return -1;
|
||||
}
|
||||
else
|
||||
@@ -187,7 +187,7 @@ int starter_start_charon (starter_config_t *cfg, bool no_fork, bool attach_gdb)
|
||||
switch (pid)
|
||||
{
|
||||
case -1:
|
||||
plog("can't fork(): %s", strerror(errno));
|
||||
DBG1(DBG_APP, "can't fork(): %s", strerror(errno));
|
||||
return -1;
|
||||
case 0:
|
||||
/* child */
|
||||
@@ -197,7 +197,7 @@ int starter_start_charon (starter_config_t *cfg, bool no_fork, bool attach_gdb)
|
||||
/* disable glibc's malloc checker, conflicts with leak detective */
|
||||
setenv("MALLOC_CHECK_", "0", 1);
|
||||
execv(arg[0], arg);
|
||||
plog("can't execv(%s,...): %s", arg[0], strerror(errno));
|
||||
DBG1(DBG_APP, "can't execv(%s,...): %s", arg[0], strerror(errno));
|
||||
exit(1);
|
||||
default:
|
||||
/* father */
|
||||
@@ -208,14 +208,15 @@ int starter_start_charon (starter_config_t *cfg, bool no_fork, bool attach_gdb)
|
||||
usleep(20000);
|
||||
if (stat(CHARON_PID_FILE, &stb) == 0)
|
||||
{
|
||||
plog("charon (%d) started after %d ms", _charon_pid, 20*(i+1));
|
||||
DBG1(DBG_APP, "charon (%d) started after %d ms",
|
||||
_charon_pid, 20*(i+1));
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
if (_charon_pid)
|
||||
{
|
||||
/* If charon is started but with no ctl file, stop it */
|
||||
plog("charon too long to start... - kill kill");
|
||||
DBG1(DBG_APP, "charon too long to start... - kill kill");
|
||||
for (i = 0; i < 20 && (pid = _charon_pid) != 0; i++)
|
||||
{
|
||||
if (i == 0)
|
||||
@@ -235,7 +236,7 @@ int starter_start_charon (starter_config_t *cfg, bool no_fork, bool attach_gdb)
|
||||
}
|
||||
else
|
||||
{
|
||||
plog("charon refused to be started");
|
||||
DBG1(DBG_APP, "charon refused to be started");
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user