- char buffer[1024];
- va_list ap;
-
- va_start(ap, fmt);
- vsnprintf (buffer, 1024, fmt, ap);
- va_end(ap);
- buffer[1023]=0;
-
- if (level < L_DEBUG) {
- syslog(level, "%s", buffer);
- }
-
- if (opt_debug) {
- time_t now;
- struct tm * tm;
-
- time(&now);
- tm = localtime(&now);
- fprintf (stderr, "%02d.%02d.%02d %02d:%02d:%02d %s[%d]: %s\n",
- tm->tm_mday, tm->tm_mon, tm->tm_year,
+ char buffer[1024];
+ va_list ap;
+
+ va_start(ap, fmt);
+ vsnprintf (buffer, 1024, fmt, ap);
+ va_end(ap);
+ buffer[1023]=0;
+
+ if ((!(run_mode & MODE_LOG_STDERR)) && (level < N_DEBUG)) {
+ syslog(level, "%s", buffer);
+ } else if (run_mode & MODE_LOG_STDERR) {
+ /* Log everything, including dprintf() stuff to stderr */
+ time_t now;
+ struct tm * tm;
+
+ time(&now);
+ tm = localtime(&now);
+ fprintf (stderr, "%02d/%02d/%04d %02d:%02d:%02d %s[%d]: %s\n",
+ tm->tm_mon + 1, tm->tm_mday, tm->tm_year + 1900,