version 1.11.2.5, 2001/09/27 00:15:42 |
version 1.11.2.6, 2002/03/08 17:04:42 |
|
|
{ "LOCAL5", SYSLOG_FACILITY_LOCAL5 }, |
{ "LOCAL5", SYSLOG_FACILITY_LOCAL5 }, |
{ "LOCAL6", SYSLOG_FACILITY_LOCAL6 }, |
{ "LOCAL6", SYSLOG_FACILITY_LOCAL6 }, |
{ "LOCAL7", SYSLOG_FACILITY_LOCAL7 }, |
{ "LOCAL7", SYSLOG_FACILITY_LOCAL7 }, |
{ NULL, 0 } |
{ NULL, SYSLOG_FACILITY_NOT_SET } |
}; |
}; |
|
|
static struct { |
static struct { |
|
|
{ "DEBUG1", SYSLOG_LEVEL_DEBUG1 }, |
{ "DEBUG1", SYSLOG_LEVEL_DEBUG1 }, |
{ "DEBUG2", SYSLOG_LEVEL_DEBUG2 }, |
{ "DEBUG2", SYSLOG_LEVEL_DEBUG2 }, |
{ "DEBUG3", SYSLOG_LEVEL_DEBUG3 }, |
{ "DEBUG3", SYSLOG_LEVEL_DEBUG3 }, |
{ NULL, 0 } |
{ NULL, SYSLOG_LEVEL_NOT_SET } |
}; |
}; |
|
|
static void do_log(LogLevel level, const char *fmt, va_list args); |
|
|
|
SyslogFacility |
SyslogFacility |
log_facility_number(char *name) |
log_facility_number(char *name) |
{ |
{ |
|
|
for (i = 0; log_facilities[i].name; i++) |
for (i = 0; log_facilities[i].name; i++) |
if (strcasecmp(log_facilities[i].name, name) == 0) |
if (strcasecmp(log_facilities[i].name, name) == 0) |
return log_facilities[i].val; |
return log_facilities[i].val; |
return (SyslogFacility) - 1; |
return SYSLOG_FACILITY_NOT_SET; |
} |
} |
|
|
LogLevel |
LogLevel |
|
|
for (i = 0; log_levels[i].name; i++) |
for (i = 0; log_levels[i].name; i++) |
if (strcasecmp(log_levels[i].name, name) == 0) |
if (strcasecmp(log_levels[i].name, name) == 0) |
return log_levels[i].val; |
return log_levels[i].val; |
return (LogLevel) - 1; |
return SYSLOG_LEVEL_NOT_SET; |
} |
} |
/* Fatal messages. This function never returns. */ |
|
|
|
void |
|
fatal(const char *fmt,...) |
|
{ |
|
va_list args; |
|
va_start(args, fmt); |
|
do_log(SYSLOG_LEVEL_FATAL, fmt, args); |
|
va_end(args); |
|
fatal_cleanup(); |
|
} |
|
|
|
/* Error messages that should be logged. */ |
/* Error messages that should be logged. */ |
|
|
void |
void |
|
|
for (cu = fatal_cleanups; cu; cu = next_cu) { |
for (cu = fatal_cleanups; cu; cu = next_cu) { |
next_cu = cu->next; |
next_cu = cu->next; |
debug("Calling cleanup 0x%lx(0x%lx)", |
debug("Calling cleanup 0x%lx(0x%lx)", |
(u_long) cu->proc, (u_long) cu->context); |
(u_long) cu->proc, (u_long) cu->context); |
(*cu->proc) (cu->context); |
(*cu->proc) (cu->context); |
} |
} |
exit(255); |
exit(255); |
|
|
|
|
#define MSGBUFSIZ 1024 |
#define MSGBUFSIZ 1024 |
|
|
static void |
void |
do_log(LogLevel level, const char *fmt, va_list args) |
do_log(LogLevel level, const char *fmt, va_list args) |
{ |
{ |
char msgbuf[MSGBUFSIZ]; |
char msgbuf[MSGBUFSIZ]; |