48 static int logging_to_syslog = 0;
62 static FILE* logfile = NULL;
65 #define CTIME_LENGTH 26
75 #define MY_PACKAGE_TARNAME "ods-signerd"
77 static const char* log_str =
"log";
90 log_str, use_syslog?
"syslog":(filename&&filename[0]?filename:
"stderr"),
91 verbosity, verbosity+2);
92 if (logfile && logfile != stderr) {
95 log_level = verbosity + 2;
98 if(logging_to_syslog) {
100 logging_to_syslog = 0;
105 logging_to_syslog = 1;
110 if(filename && filename[0]) {
111 logfile =
ods_fopen(filename, NULL,
"a");
118 "stderr", log_str, filename);
154 length = strlen(facility);
156 if (length == 4 && strncasecmp(facility,
"KERN", 4) == 0)
158 else if (length == 4 && strncasecmp(facility,
"USER", 4) == 0)
160 else if (length == 4 && strncasecmp(facility,
"MAIL", 4) == 0)
162 else if (length == 6 && strncasecmp(facility,
"DAEMON", 6) == 0)
164 else if (length == 4 && strncasecmp(facility,
"AUTH", 4) == 0)
166 else if (length == 3 && strncasecmp(facility,
"LPR", 3) == 0)
168 else if (length == 4 && strncasecmp(facility,
"NEWS", 4) == 0)
170 else if (length == 4 && strncasecmp(facility,
"UUCP", 4) == 0)
172 else if (length == 4 && strncasecmp(facility,
"CRON", 4) == 0)
174 else if (length == 6 && strncasecmp(facility,
"LOCAL0", 6) == 0)
176 else if (length == 6 && strncasecmp(facility,
"LOCAL1", 6) == 0)
178 else if (length == 6 && strncasecmp(facility,
"LOCAL2", 6) == 0)
180 else if (length == 6 && strncasecmp(facility,
"LOCAL3", 6) == 0)
182 else if (length == 6 && strncasecmp(facility,
"LOCAL4", 6) == 0)
184 else if (length == 6 && strncasecmp(facility,
"LOCAL5", 6) == 0)
186 else if (length == 6 && strncasecmp(facility,
"LOCAL6", 6) == 0)
188 else if (length == 6 && strncasecmp(facility,
"LOCAL7", 6) == 0)
191 "log_daemon", log_str, facility);
212 ods_log_vmsg(
int priority,
const char* t,
const char* s, va_list args)
214 char message[ODS_SE_MAXLINE];
218 vsnprintf(message,
sizeof(message), s, args);
221 if (logging_to_syslog) {
222 syslog(priority,
"%s", message);
231 (void) ctime_r(&now, nowstr);
234 fprintf(logfile,
"[%s] %s[%i] %s: %s\n", nowstr,
248 va_start(args, format);
250 ods_log_vmsg(
LOG_DEBUG,
"debug ", format, args);
264 va_start(args, format);
266 ods_log_vmsg(
LOG_DEBUG,
"debug ", format, args);
280 va_start(args, format);
282 ods_log_vmsg(
LOG_INFO,
"verbose", format, args);
296 va_start(args, format);
298 ods_log_vmsg(
LOG_NOTICE,
"msg ", format, args);
312 va_start(args, format);
314 ods_log_vmsg(
LOG_WARNING,
"warning", format, args);
328 va_start(args, format);
330 ods_log_vmsg(
LOG_ERR,
"error ", format, args);
344 va_start(args, format);
346 ods_log_vmsg(
LOG_CRIT,
"crit ", format, args);
360 va_start(args, format);
362 ods_log_vmsg(
LOG_ALERT,
"alert ", format, args);
376 va_start(args, format);
378 ods_log_vmsg(
LOG_CRIT,
"fatal ", format, args);