X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Fngircd.c;h=ecc9d332a1a77675b5889497366e68c4c8b3d955;hp=623b96c1a34e890deaba5d4b81f93a9e4294ce44;hb=f73e403ae59fc4a8d5d6e55523ff878ab3e5ef72;hpb=07c3e62e1109b555e932a8e2a245ed34668a1724 diff --git a/src/ngircd/ngircd.c b/src/ngircd/ngircd.c index 623b96c1..ecc9d332 100644 --- a/src/ngircd/ngircd.c +++ b/src/ngircd/ngircd.c @@ -9,7 +9,7 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: ngircd.c,v 1.39 2002/03/29 22:56:40 alex Exp $ + * $Id: ngircd.c,v 1.44 2002/04/24 13:33:56 alex Exp $ * * ngircd.c: Hier beginnt alles ;-) */ @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -145,7 +146,7 @@ GLOBAL int main( int argc, const char *argv[] ) #endif if( argv[i][n] == 'f' ) { - if(( ! argv[i][n+i] ) && ( i + 1 < argc )) + if(( ! argv[i][n + 1] ) && ( i + 1 < argc )) { /* Ok, danach kommt ein Leerzeichen */ strncpy( NGIRCd_ConfFile, argv[i + 1], FNAME_LEN - 1 ); @@ -249,21 +250,23 @@ GLOBAL int main( int argc, const char *argv[] ) /* Wenn als root ausgefuehrt und eine andere UID * konfiguriert ist, jetzt zu dieser wechseln */ - if( getuid( ) != 0 ) + if( getuid( ) == 0 ) { - if( Conf_GID > 0 ) + if( Conf_GID != 0 ) { /* Neue Group-ID setzen */ if( setgid( Conf_GID ) != 0 ) Log( LOG_ERR, "Can't change Group-ID to %u: %s", Conf_GID, strerror( errno )); } - if( Conf_UID > 0 ) + if( Conf_UID != 0 ) { /* Neue User-ID setzen */ - if( setgid( Conf_UID ) != 0 ) Log( LOG_ERR, "Can't change User-ID to %u: %s", Conf_UID, strerror( errno )); + if( setuid( Conf_UID ) != 0 ) Log( LOG_ERR, "Can't change User-ID to %u: %s", Conf_UID, strerror( errno )); } } Log( LOG_INFO, "Running as user %ld, group %ld.", (INT32)getuid( ), (INT32)getgid( )); + Log_InitErrorfile( ); + /* Signal-Handler initialisieren */ Initialize_Signal_Handler( ); @@ -308,6 +311,10 @@ GLOBAL CHAR *NGIRCd_VersionAddition( VOID ) if( txt[0] ) strcat( txt, "+" ); strcat( txt, "SYSLOG" ); #endif +#ifdef REGEX + if( txt[0] ) strcat( txt, "+" ); + strcat( txt, "REGEX" ); +#endif #ifdef STRICT_RFC if( txt[0] ) strcat( txt, "+" ); strcat( txt, "RFC" ); @@ -433,7 +440,8 @@ LOCAL VOID Initialize_Listen_Ports( VOID ) LOCAL VOID Show_Version( VOID ) { puts( NGIRCd_Version( )); - puts( "Copyright (c)2001,2002 by Alexander Barton (alex@barton.de).\n" ); + puts( "Copyright (c)2001,2002 by Alexander Barton ()." ); + puts( "Homepage: \n" ); puts( "This is free software; see the source for copying conditions. There is NO" ); puts( "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." ); } /* Show_Version */