mirror of
https://github.com/osmarks/ngircd.git
synced 2025-05-06 09:14:07 +00:00
- neue Funktion NGIRCd_VersionAddition(). NGIRCd_Version() aufgespaltet.
This commit is contained in:
parent
5a8a789511
commit
3fbbfe44ed
@ -9,11 +9,14 @@
|
|||||||
* Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
|
* Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
|
||||||
* der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
|
* der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
|
||||||
*
|
*
|
||||||
* $Id: ngircd.c,v 1.22 2002/01/22 17:15:39 alex Exp $
|
* $Id: ngircd.c,v 1.23 2002/02/17 23:40:21 alex Exp $
|
||||||
*
|
*
|
||||||
* ngircd.c: Hier beginnt alles ;-)
|
* ngircd.c: Hier beginnt alles ;-)
|
||||||
*
|
*
|
||||||
* $Log: ngircd.c,v $
|
* $Log: ngircd.c,v $
|
||||||
|
* Revision 1.23 2002/02/17 23:40:21 alex
|
||||||
|
* - neue Funktion NGIRCd_VersionAddition(). NGIRCd_Version() aufgespaltet.
|
||||||
|
*
|
||||||
* Revision 1.22 2002/01/22 17:15:39 alex
|
* Revision 1.22 2002/01/22 17:15:39 alex
|
||||||
* - die Fehlermeldung "interrupted system call" sollte nicht mehr auftreten.
|
* - die Fehlermeldung "interrupted system call" sollte nicht mehr auftreten.
|
||||||
*
|
*
|
||||||
@ -295,34 +298,40 @@ GLOBAL INT main( INT argc, CONST CHAR *argv[] )
|
|||||||
GLOBAL CHAR *NGIRCd_Version( VOID )
|
GLOBAL CHAR *NGIRCd_Version( VOID )
|
||||||
{
|
{
|
||||||
STATIC CHAR version[126];
|
STATIC CHAR version[126];
|
||||||
CHAR txt[64];
|
|
||||||
|
sprintf( version, PACKAGE" version "VERSION"-%s", NGIRCd_VersionAddition( ));
|
||||||
|
return version;
|
||||||
|
} /* NGIRCd_Version */
|
||||||
|
|
||||||
|
|
||||||
|
GLOBAL CHAR *NGIRCd_VersionAddition( VOID )
|
||||||
|
{
|
||||||
|
STATIC CHAR txt[64];
|
||||||
|
|
||||||
strcpy( txt, "" );
|
strcpy( txt, "" );
|
||||||
|
|
||||||
#ifdef USE_SYSLOG
|
#ifdef USE_SYSLOG
|
||||||
if( txt[0] ) strcat( txt, "+" );
|
if( txt[0] ) strcat( txt, "+" );
|
||||||
else strcat( txt, "-" );
|
|
||||||
strcat( txt, "SYSLOG" );
|
strcat( txt, "SYSLOG" );
|
||||||
#endif
|
#endif
|
||||||
#ifdef STRICT_RFC
|
#ifdef STRICT_RFC
|
||||||
if( txt[0] ) strcat( txt, "+" );
|
if( txt[0] ) strcat( txt, "+" );
|
||||||
else strcat( txt, "-" );
|
|
||||||
strcat( txt, "RFC" );
|
strcat( txt, "RFC" );
|
||||||
#endif
|
#endif
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
if( txt[0] ) strcat( txt, "+" );
|
if( txt[0] ) strcat( txt, "+" );
|
||||||
else strcat( txt, "-" );
|
|
||||||
strcat( txt, "DEBUG" );
|
strcat( txt, "DEBUG" );
|
||||||
#endif
|
#endif
|
||||||
#ifdef SNIFFER
|
#ifdef SNIFFER
|
||||||
if( txt[0] ) strcat( txt, "+" );
|
if( txt[0] ) strcat( txt, "+" );
|
||||||
else strcat( txt, "-" );
|
|
||||||
strcat( txt, "SNIFFER" );
|
strcat( txt, "SNIFFER" );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
sprintf( version, PACKAGE" version "VERSION"%s-"P_OSNAME"/"P_ARCHNAME, txt );
|
if( txt[0] ) strcat( txt, "-" );
|
||||||
return version;
|
strcat( txt, P_OSNAME"/"P_ARCHNAME );
|
||||||
} /* NGIRCd_Version */
|
|
||||||
|
return txt;
|
||||||
|
} /* NGIRCd_VersionAddition */
|
||||||
|
|
||||||
|
|
||||||
LOCAL VOID Initialize_Signal_Handler( VOID )
|
LOCAL VOID Initialize_Signal_Handler( VOID )
|
||||||
@ -341,6 +350,7 @@ LOCAL VOID Initialize_Signal_Handler( VOID )
|
|||||||
sigaction( SIGINT, &saction, NULL );
|
sigaction( SIGINT, &saction, NULL );
|
||||||
sigaction( SIGQUIT, &saction, NULL );
|
sigaction( SIGQUIT, &saction, NULL );
|
||||||
sigaction( SIGTERM, &saction, NULL);
|
sigaction( SIGTERM, &saction, NULL);
|
||||||
|
sigaction( SIGHUP, &saction, NULL);
|
||||||
sigaction( SIGCHLD, &saction, NULL);
|
sigaction( SIGCHLD, &saction, NULL);
|
||||||
|
|
||||||
/* einige Signale ignorieren */
|
/* einige Signale ignorieren */
|
||||||
@ -361,9 +371,16 @@ LOCAL VOID Signal_Handler( INT Signal )
|
|||||||
case SIGINT:
|
case SIGINT:
|
||||||
case SIGQUIT:
|
case SIGQUIT:
|
||||||
/* wir soll(t)en uns wohl beenden ... */
|
/* wir soll(t)en uns wohl beenden ... */
|
||||||
Log( LOG_WARNING, "Got signal %d, terminating now ...", Signal );
|
if( Signal == SIGTERM ) Log( LOG_WARNING, "Got TERM signal, terminating now ..." );
|
||||||
|
else if( Signal == SIGINT ) Log( LOG_WARNING, "Got INT signal, terminating now ..." );
|
||||||
|
else if( Signal == SIGQUIT ) Log( LOG_WARNING, "Got QUIT signal, terminating now ..." );
|
||||||
NGIRCd_Quit = TRUE;
|
NGIRCd_Quit = TRUE;
|
||||||
break;
|
break;
|
||||||
|
case SIGHUP:
|
||||||
|
/* neu starten */
|
||||||
|
Log( LOG_WARNING, "Got HUP signal, restarting now ..." );
|
||||||
|
NGIRCd_Restart = TRUE;
|
||||||
|
break;
|
||||||
case SIGCHLD:
|
case SIGCHLD:
|
||||||
/* Child-Prozess wurde beendet. Zombies vermeiden: */
|
/* Child-Prozess wurde beendet. Zombies vermeiden: */
|
||||||
while( waitpid( -1, NULL, WNOHANG ) > 0);
|
while( waitpid( -1, NULL, WNOHANG ) > 0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user