}
}
-void seccomp_sigsys_handler(struct logger *logger)
+void seccomp_sigsys_handler(struct verbose verbose)
{
const struct config_setup *oco = config_setup_singleton();
switch (seccomp_mode(oco)) {
case SECCOMP_ENABLED:
- fatal(PLUTO_EXIT_SECCOMP_FAIL, logger, /*no-errno*/0,
- "pluto received SIGSYS - seccomp=enabled mandates daemon restart");
+ vfatal(PLUTO_EXIT_SECCOMP_FAIL, /*no-errno*/0,
+ "pluto received SIGSYS - seccomp=enabled mandates daemon restart");
case SECCOMP_TOLERANT:
- llog(RC_LOG, logger, "pluto received SIGSYS - seccomp=tolerant - possible SECCOMP violation!");
+ vlog("pluto received SIGSYS - seccomp=tolerant - possible SECCOMP violation!");
return;
case SECCOMP_DISABLED:
- fatal(PLUTO_EXIT_FAIL, logger, /*no-errno*/0,
- "pluto received SIGSYS - seccomp=disabled - aborting due to bad system call");
+ vfatal(PLUTO_EXIT_FAIL, /*no-errno*/0,
+ "pluto received SIGSYS - seccomp=disabled - aborting due to bad system call");
}
bad_case(seccomp_mode(oco));
}
#ifndef PLUTO_SECCOMP_H
#define PLUTO_SECCOMP_H
+#include "verbose.h"
+
#include "seccomp_mode.h"
struct config_setup;
void whack_seccomp_crashtest(const struct whack_message *wm, struct show *s);
void show_seccomp(const struct config_setup *oco, struct show *s);
-void seccomp_sigsys_handler(struct logger *logger);
+void seccomp_sigsys_handler(struct verbose verbose);
#endif
* Global signal events.
*/
-typedef void (signal_handler_cb)(struct logger *logger);
+typedef void (signal_handler_cb)(struct verbose verbose);
struct signal_handler {
struct event ev;
static void signal_handler_handler(evutil_socket_t fd UNUSED,
const short event, void *arg)
{
- struct logger logger[1] = { global_logger, }; /* event-handler */
- PASSERT(logger, in_main_thread());
- PASSERT(logger, event & EV_SIGNAL);
+ struct verbose verbose = VERBOSE(DEBUG_STREAM, &global_logger, NULL); /* event-handler */
+ vassert(in_main_thread());
+ vassert(event & EV_SIGNAL);
struct signal_handler *se = arg;
- ldbg(logger, "processing signal %s", se->name);
- threadtime_t start = threadtime_start();
- se->cb(logger);
- threadtime_stop(&start, "signal handler %s", se->name);
+ const char *name = se->name; /*save*/
+ vtime_t start = vdbg_start("processing signal %s", name);
+ se->cb(verbose);
+ vdbg_stop(&start, "signal handler %s", name);
}
static void install_signal_handlers(const struct logger *logger)
}
}
-static void huphandler_cb(struct logger *logger)
+static void huphandler_cb(struct verbose verbose)
{
- llog(RC_LOG, logger, "Pluto ignores SIGHUP -- perhaps you want \"whack --listen\"");
+ vlog("Pluto ignores SIGHUP -- perhaps you want \"whack --listen\"");
}
-static void termhandler_cb(struct logger *logger)
+static void termhandler_cb(struct verbose verbose)
{
- whack_shutdown(logger, PLUTO_EXIT_OK);
+ whack_shutdown(verbose.logger, PLUTO_EXIT_OK);
}
static server_fork_cb addconn_exited; /* type assertion */
jam_string(buf, ")");
}
-void server_fork_sigchld_handler(struct logger *logger)
+void server_fork_sigchld_handler(struct verbose verbose)
{
while (true) {
int status;
switch (child) {
case -1: /* error? */
if (errno == ECHILD) {
- ldbg(logger, "waitpid returned ECHILD (no child processes left)");
+ vdbg("waitpid returned ECHILD (no child processes left)");
} else {
- llog_errno(ERROR_STREAM, logger, errno,
- "waitpid unexpectedly failed: ");
+ verror(errno, "waitpid unexpectedly failed: ");
}
return;
case 0: /* nothing to do */
- ldbg(logger, "waitpid returned nothing left to do (all child processes are busy)");
+ vdbg("waitpid returned nothing left to do (all child processes are busy)");
return;
default:
- LDBGP_JAMBUF(DBG_BASE, logger, buf) {
- jam(buf, "waitpid returned pid %d",
- child);
+ VDBG_JAMBUF(buf) {
+ jam(buf, "waitpid returned pid %d", child);
jam_status(buf, status);
}
struct pid_entry *pid_entry = pid_entry_by_pid(child);
if (pid_entry == NULL) {
- LLOG_JAMBUF(RC_LOG, logger, buf) {
- jam(buf, "waitpid return unknown child pid %d",
- child);
+ VLOG_JAMBUF(buf) {
+ jam(buf, "waitpid return unknown child pid %d", child);
jam_status(buf, status);
}
continue;
pid_entry->context,
pid_entry->logger);
} else if (st == NULL) {
- LDBGP_JAMBUF(DBG_BASE, logger, buf) {
+ LDBGP_JAMBUF(DBG_BASE, pid_entry->logger, buf) {
jam_pid_entry(buf, pid_entry);
jam_string(buf, " disappeared");
}
#define SERVER_FORK_H
#include "chunk.h"
+#include "verbose.h"
struct logger;
struct msg_digest;
void *callback_context,
struct logger *logger);
-void server_fork_sigchld_handler(struct logger *logger);
+void server_fork_sigchld_handler(struct verbose verbose);
+
void init_server_fork(struct logger *logger);
void check_server_fork(struct logger *logger, where_t where);
void free_server_fork(struct logger *logger); /*just deletes memory*/