]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/log.c
Added cast to integer for Solaris.
[ngircd-alex.git] / src / ngircd / log.c
index 1c8d2c7b3e1b52ab37b6b14cb88568d63d434212..7fa57255ca7b957373db701c29865ca3f223e3de 100644 (file)
@@ -14,7 +14,7 @@
 
 #include "portab.h"
 
-static char UNUSED id[] = "$Id: log.c,v 1.44 2003/12/26 15:55:07 alex Exp $";
+static char UNUSED id[] = "$Id: log.c,v 1.47 2004/06/26 08:50:44 alex Exp $";
 
 #include "imp.h"
 #include <assert.h>
@@ -85,6 +85,8 @@ Log_Init( VOID )
        }
 #endif
        if( Init_Txt[0] ) Log( LOG_INFO, "Activating: %s.", Init_Txt );
+
+       Error_File[0] = '\0';
 } /* Log_Init */
 
 
@@ -122,8 +124,11 @@ Log_Exit( VOID )
        if( NGIRCd_SignalRestart ) Log( LOG_NOTICE, "%s done (restarting).", PACKAGE_NAME );
        else Log( LOG_NOTICE, "%s done.", PACKAGE_NAME );
 
-       /* Error-File (stderr) loeschen */
-       if( unlink( Error_File ) != 0 ) Log( LOG_ERR, "Can't delete \"%s\": %s", Error_File, strerror( errno ));
+       if( Error_File[0] )
+       {
+               /* Error-File (stderr) loeschen */
+               if( unlink( Error_File ) != 0 ) Log( LOG_ERR, "Can't delete \"%s\": %s", Error_File, strerror( errno ));
+       }
 
 #ifdef SYSLOG
        /* syslog abmelden */
@@ -177,7 +182,7 @@ va_dcl
        if( NGIRCd_NoDaemon )
        {
                /* auf Konsole ausgeben */
-               fprintf( stdout, "[%d] %s\n", Level, msg );
+               fprintf( stdout, "[%d:%d] %s\n", (INT)getpid( ), Level, msg );
                fflush( stdout );
        }
 #ifdef SYSLOG
@@ -209,12 +214,14 @@ Log_Init_Resolver( VOID )
 #ifdef SYSLOG
        openlog( PACKAGE_NAME, LOG_CONS|LOG_PID, LOG_LOCAL5 );
 #endif
+       Log_Resolver( LOG_DEBUG, "Resolver sub-process starting, PID %d.", getpid( ));
 } /* Log_Init_Resolver */
 
 
 GLOBAL VOID
 Log_Exit_Resolver( VOID )
 {
+       Log_Resolver( LOG_DEBUG, "Resolver sub-process %d done.", getpid( ));
 #ifdef SYSLOG
        closelog( );
 #endif
@@ -234,17 +241,11 @@ va_dcl
 {
        /* Eintrag des Resolver in Logfile(s) schreiben */
 
-#ifndef SYSLOG
-       return;
-#else
-
        CHAR msg[MAX_LOG_MSG_LEN];
        va_list ap;
 
        assert( Format != NULL );
 
-       if( NGIRCd_NoDaemon ) return;
-
 #ifdef DEBUG
        if(( Level == LOG_DEBUG ) && ( ! NGIRCd_Debug )) return;
 #else
@@ -260,9 +261,15 @@ va_dcl
        vsnprintf( msg, MAX_LOG_MSG_LEN, Format, ap );
        va_end( ap );
 
-       /* ... und ausgeben */
-       syslog( Level, msg );
-
+       /* Output */
+       if( NGIRCd_NoDaemon )
+       {
+               /* Output to console */
+               fprintf( stdout, "[%d:%d] %s\n", (INT)getpid( ), Level, msg );
+               fflush( stdout );
+       }
+#ifdef SYSLOG
+       else syslog( Level, msg );
 #endif
 } /* Log_Resolver */