version 1.27, 2003/05/18 23:22:01 |
version 1.28, 2003/05/24 09:02:22 |
|
|
#include "xmalloc.h" |
#include "xmalloc.h" |
|
|
#include <syslog.h> |
#include <syslog.h> |
|
#include <vis.h> |
|
|
static LogLevel log_level = SYSLOG_LEVEL_INFO; |
static LogLevel log_level = SYSLOG_LEVEL_INFO; |
static int log_on_stderr = 1; |
static int log_on_stderr = 1; |
|
|
} else { |
} else { |
vsnprintf(msgbuf, sizeof(msgbuf), fmt, args); |
vsnprintf(msgbuf, sizeof(msgbuf), fmt, args); |
} |
} |
|
strnvis(fmtbuf, msgbuf, sizeof(fmtbuf), VIS_SAFE|VIS_OCTAL); |
if (log_on_stderr) { |
if (log_on_stderr) { |
snprintf(fmtbuf, sizeof fmtbuf, "%s\r\n", msgbuf); |
snprintf(msgbuf, sizeof msgbuf, "%s\r\n", fmtbuf); |
write(STDERR_FILENO, fmtbuf, strlen(fmtbuf)); |
write(STDERR_FILENO, msgbuf, strlen(msgbuf)); |
} else { |
} else { |
openlog_r(argv0 ? argv0 : __progname, LOG_PID, log_facility, &sdata); |
openlog_r(argv0 ? argv0 : __progname, LOG_PID, log_facility, &sdata); |
syslog_r(pri, &sdata, "%.500s", msgbuf); |
syslog_r(pri, &sdata, "%.500s", fmtbuf); |
closelog_r(&sdata); |
closelog_r(&sdata); |
} |
} |
} |
} |