*/
#include "libbb.h"
-#include <sys/syslog.h>
+#include <syslog.h>
#include <sys/klog.h>
static void klogd_signal(int sig ATTRIBUTE_UNUSED)
klogctl(7, NULL, 0);
klogctl(0, NULL, 0);
syslog(LOG_NOTICE, "klogd: exiting");
- exit(EXIT_SUCCESS);
+ kill_myself_with_sig(sig);
}
#define log_buffer bb_common_bufsiz1
};
int klogd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int klogd_main(int argc, char **argv)
+int klogd_main(int argc ATTRIBUTE_UNUSED, char **argv)
{
int i = i; /* silence gcc */
char *start;
openlog("kernel", 0, LOG_KERN);
/* Set up sig handlers */
- signal(SIGINT, klogd_signal);
- signal(SIGKILL, klogd_signal);
- signal(SIGTERM, klogd_signal);
+ bb_signals(0
+ + (1 << SIGINT)
+ + (1 << SIGTERM)
+ , klogd_signal);
signal(SIGHUP, SIG_IGN);
/* "Open the log. Currently a NOP." */