+ /* "Error-Log" initialisieren: stderr in Datei umlenken. Dort
+ * landen z.B. alle Ausgaben von assert()-Aufrufen. */
+
+ /* Dateiname zusammen bauen */
+ sprintf( Error_File, "%s/%s-%ld.err", ERROR_DIR, PACKAGE, (INT32)getpid( ));
+
+ /* stderr umlenken */
+ fflush( stderr );
+ if( ! freopen( Error_File, "w", stderr ))
+ {
+ Log( LOG_ERR, "Can't reopen stderr (\"%s\"): %s", Error_File, strerror( errno ));
+ return;
+ }
+
+ /* Einige Infos in das Error-File schreiben */
+ fputs( ctime( &NGIRCd_Start ), stderr );
+ fprintf( stderr, "%s started.\n", NGIRCd_Version( ));
+ fprintf( stderr, "Activating: %s\n\n", Init_Txt[0] ? Init_Txt : "-" );
+ fflush( stderr );
+
+ Log( LOG_DEBUG, "Redirected stderr to \"%s\".", Error_File );
+} /* Log_InitErrfile */
+
+
+GLOBAL VOID
+Log_Exit( VOID )
+{
+ /* Good Bye! */
+ if( NGIRCd_Restart ) Log( LOG_NOTICE, "%s done (restarting).", PACKAGE );
+ else Log( LOG_NOTICE, "%s done.", PACKAGE );
+
+ /* Error-File (stderr) loeschen */
+ if( unlink( Error_File ) != 0 ) Log( LOG_ERR, "Can't delete \"%s\": %s", Error_File, strerror( errno ));
+