diff options
| author | Alexander Barton <alex@barton.de> | 2003-12-04 14:05:16 +0000 |
|---|---|---|
| committer | Alexander Barton <alex@barton.de> | 2003-12-04 14:05:16 +0000 |
| commit | 05e2c0f0483aa53b1396f60fc39047350dfb49d8 (patch) | |
| tree | 8911ef10266301893fb12b5ca46b855e3c6da45a /src | |
| parent | d329a961bd7153754fe587c14719d68a0ea422a0 (diff) | |
| download | ngircd-05e2c0f0483aa53b1396f60fc39047350dfb49d8.tar.gz ngircd-05e2c0f0483aa53b1396f60fc39047350dfb49d8.zip | |
Extended version reporting of CVS builds.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ngircd/Makefile.am | 6 | ||||
| -rw-r--r-- | src/ngircd/irc-info.c | 7 | ||||
| -rw-r--r-- | src/ngircd/irc-login.c | 29 |
3 files changed, 34 insertions, 8 deletions
diff --git a/src/ngircd/Makefile.am b/src/ngircd/Makefile.am index 8ac74fb6..9b275e61 100644 --- a/src/ngircd/Makefile.am +++ b/src/ngircd/Makefile.am @@ -8,7 +8,7 @@ # (at your option) any later version. # Please read the file COPYING, README and AUTHORS for more information. # -# $Id: Makefile.am,v 1.41 2003/09/09 13:24:41 alex Exp $ +# $Id: Makefile.am,v 1.42 2003/12/04 14:05:16 alex Exp $ # AUTOMAKE_OPTIONS = ../portab/ansi2knr @@ -63,6 +63,10 @@ lint: ngircd.c: cvs-version.h +irc-login.c: cvs-version.h + +irc-info.c: cvs-version.h + cvs-version.h: cvs-date cvs-date: diff --git a/src/ngircd/irc-info.c b/src/ngircd/irc-info.c index e4d1c7fc..28ac7e98 100644 --- a/src/ngircd/irc-info.c +++ b/src/ngircd/irc-info.c @@ -14,7 +14,7 @@ #include "portab.h" -static char UNUSED id[] = "$Id: irc-info.c,v 1.18 2003/11/05 23:24:48 alex Exp $"; +static char UNUSED id[] = "$Id: irc-info.c,v 1.19 2003/12/04 14:05:16 alex Exp $"; #include "imp.h" #include <assert.h> @@ -494,7 +494,7 @@ IRC_VERSION( CLIENT *Client, REQUEST *Req ) { CLIENT *target, *prefix; #ifdef CVSDATE - CHAR ver[12]; + CHAR ver[12], vertxt[30]; #endif assert( Client != NULL ); @@ -528,7 +528,8 @@ IRC_VERSION( CLIENT *Client, REQUEST *Req ) strlcpy( ver, CVSDATE, sizeof( ver )); strncpy( ver + 4, ver + 5, 2 ); strncpy( ver + 6, ver + 8, 3 ); - return IRC_WriteStrClient( Client, RPL_VERSION_MSG, Client_ID( prefix ), PACKAGE_NAME, ver, NGIRCd_DebugLevel, Conf_ServerName, NGIRCd_VersionAddition( )); + snprintf( vertxt, sizeof( vertxt ), "%s(%s)", PACKAGE_VERSION, ver ); + return IRC_WriteStrClient( Client, RPL_VERSION_MSG, Client_ID( prefix ), PACKAGE_NAME, vertxt, NGIRCd_DebugLevel, Conf_ServerName, NGIRCd_VersionAddition( )); #else return IRC_WriteStrClient( Client, RPL_VERSION_MSG, Client_ID( prefix ), PACKAGE_NAME, PACKAGE_VERSION, NGIRCd_DebugLevel, Conf_ServerName, NGIRCd_VersionAddition( )); #endif diff --git a/src/ngircd/irc-login.c b/src/ngircd/irc-login.c index b4b489f5..a077f16a 100644 --- a/src/ngircd/irc-login.c +++ b/src/ngircd/irc-login.c @@ -14,7 +14,7 @@ #include "portab.h" -static char UNUSED id[] = "$Id: irc-login.c,v 1.35 2003/11/05 23:24:48 alex Exp $"; +static char UNUSED id[] = "$Id: irc-login.c,v 1.36 2003/12/04 14:05:16 alex Exp $"; #include "imp.h" #include <assert.h> @@ -34,6 +34,7 @@ static char UNUSED id[] = "$Id: irc-login.c,v 1.35 2003/11/05 23:24:48 alex Exp #include "irc.h" #include "irc-info.h" #include "irc-write.h" +#include "cvs-version.h" #include "exp.h" #include "irc-login.h" @@ -429,12 +430,16 @@ IRC_PONG( CLIENT *Client, REQUEST *Req ) LOCAL BOOLEAN Hello_User( CLIENT *Client ) { +#ifdef CVSDATE + CHAR ver[12], vertxt[30]; +#endif + assert( Client != NULL ); - /* Passwort ueberpruefen */ + /* Check password ... */ if( strcmp( Client_Password( Client ), Conf_ServerPwd ) != 0 ) { - /* Falsches Passwort */ + /* Bad password! */ Log( LOG_ERR, "User \"%s\" rejected (connection %d): Bad password!", Client_Mask( Client ), Client_Conn( Client )); Conn_Close( Client_Conn( Client ), NULL, "Bad password", TRUE ); return DISCONNECTED; @@ -442,13 +447,29 @@ Hello_User( CLIENT *Client ) Log( LOG_NOTICE, "User \"%s\" registered (connection %d).", Client_Mask( Client ), Client_Conn( Client )); - /* Andere Server informieren */ + /* Inform other servers */ IRC_WriteStrServers( NULL, "NICK %s 1 %s %s 1 +%s :%s", Client_ID( Client ), Client_User( Client ), Client_Hostname( Client ), Client_Modes( Client ), Client_Info( Client )); + /* Welcome :-) */ if( ! IRC_WriteStrClient( Client, RPL_WELCOME_MSG, Client_ID( Client ), Client_Mask( Client ))) return FALSE; + + /* Version and system type */ +#ifdef CVSDATE + strlcpy( ver, CVSDATE, sizeof( ver )); + strncpy( ver + 4, ver + 5, 2 ); + strncpy( ver + 6, ver + 8, 3 ); + snprintf( vertxt, sizeof( vertxt ), "%s(%s)", PACKAGE_VERSION, ver ); + if( ! IRC_WriteStrClient( Client, RPL_YOURHOST_MSG, Client_ID( Client ), Client_ID( Client_ThisServer( )), vertxt, TARGET_CPU, TARGET_VENDOR, TARGET_OS )) return FALSE; +#else if( ! IRC_WriteStrClient( Client, RPL_YOURHOST_MSG, Client_ID( Client ), Client_ID( Client_ThisServer( )), PACKAGE_VERSION, TARGET_CPU, TARGET_VENDOR, TARGET_OS )) return FALSE; +#endif + if( ! IRC_WriteStrClient( Client, RPL_CREATED_MSG, Client_ID( Client ), NGIRCd_StartStr )) return FALSE; +#ifdef CVSDATE + if( ! IRC_WriteStrClient( Client, RPL_MYINFO_MSG, Client_ID( Client ), Client_ID( Client_ThisServer( )), vertxt, USERMODES, CHANMODES )) return FALSE; +#else if( ! IRC_WriteStrClient( Client, RPL_MYINFO_MSG, Client_ID( Client ), Client_ID( Client_ThisServer( )), PACKAGE_VERSION, USERMODES, CHANMODES )) return FALSE; +#endif /* Features */ if( ! IRC_WriteStrClient( Client, RPL_ISUPPORT_MSG, Client_ID( Client ), CLIENT_NICK_LEN - 1, CHANNEL_TOPIC_LEN - 1, CLIENT_AWAY_LEN - 1, Conf_MaxJoins )) return DISCONNECTED; |