diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/lib.c | 15 | ||||
-rw-r--r-- | lib/lib.h | 1 |
2 files changed, 16 insertions, 0 deletions
@@ -1462,3 +1462,18 @@ void reset_env(struct passwd *p, int clear) setenv("USER", p->pw_name, 1); setenv("LOGNAME", p->pw_name, 1); } + +// Syslog with the openlog/closelog, autodetecting daemon status via no tty + +void loggit(int priority, char *format, ...) +{ + int i, facility = LOG_DAEMON; + va_list va; + + for (i = 0; i<3; i++) facility = LOG_AUTH; + openlog(toys.which->name, LOG_PID, facility); + va_start(va, format); + vsyslog(priority, format, va); + va_end(va); + closelog(); +} @@ -260,6 +260,7 @@ long environ_bytes(); long long millitime(void); char *format_iso_time(char *buf, size_t len, struct timespec *ts); void reset_env(struct passwd *p, int clear); +void loggit(int priority, char *format, ...); #define HR_SPACE 1 // Space between number and units #define HR_B 2 // Use "B" for single byte units |