From 7df90846e1a2c56a07127b805612d0853e6b3e03 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sun, 20 Apr 2008 16:20:53 +0200 Subject: [PATCH 1/7] Synchronized branch-0-12-x (ngIRCd 0.12.0-pre1) with master. (cherry picked from commit 4ea29329674ff8ec6d772991a57c146b5d78d2ad) --- configure.in | 6 ++---- contrib/Debian/changelog | 6 ++++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/configure.in b/configure.in index 7dc17424..7f1ac495 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2005 Alexander Barton +# Copyright (c)2001-2008 Alexander Barton # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -8,13 +8,11 @@ # (at your option) any later version. # Please read the file COPYING, README and AUTHORS for more information. # -# $Id: configure.in,v 1.126 2008/02/26 22:04:15 fw Exp $ -# # -- Initialisation -- AC_PREREQ(2.50) -AC_INIT(ngircd, CVSHEAD) +AC_INIT(ngircd, HEAD) AC_CONFIG_SRCDIR(src/ngircd/ngircd.c) AC_CANONICAL_TARGET AM_INIT_AUTOMAKE(1.6) diff --git a/contrib/Debian/changelog b/contrib/Debian/changelog index dba7d289..880a5096 100644 --- a/contrib/Debian/changelog +++ b/contrib/Debian/changelog @@ -1,3 +1,9 @@ +ngircd (0.12.0-0ab0-pre1) unstable; urgency=low + + * Prereloease of upcoming new "upstrem" release 0.12.0-pre1. + + -- Alexander Barton Sun, 20 Apr 2008 15:43:34 +0200 + ngircd (0.11.0-0ab0-pre2) unstable; urgency=low * Second prerelease of upcoming new "upstream release". From 2f6d7a649cf2428991cba3b9d2250b95a5904675 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sun, 20 Apr 2008 16:46:49 +0200 Subject: [PATCH 2/7] Don't include doc/CVS.txt in distribution archive, use doc/GIT.txt now! (cherry picked from commit a8e0eb62e9dce81ca4a5c5911428561b90bf2c6e) --- doc/Makefile.am | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/doc/Makefile.am b/doc/Makefile.am index 501fdec7..394c89b0 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,6 +1,6 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2007 by Alexander Barton (alex@barton.de) +# Copyright (c)2001-2008 by Alexander Barton (alex@barton.de) # # Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen # der GNU General Public License (GPL), wie von der Free Software Foundation @@ -9,12 +9,10 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: Makefile.am,v 1.22 2007/11/20 21:39:35 alex Exp $ -# SUBDIRS = src -EXTRA_DIST = CVS.txt FAQ.txt Protocol.txt Platforms.txt README-AUX.txt \ +EXTRA_DIST = FAQ.txt GIT.txt Protocol.txt Platforms.txt README-AUX.txt \ README-BeOS.txt RFC.txt SSL.txt Zeroconf.txt sample-ngircd.conf maintainer-clean-local: From 25f48a2a342caf962920ee316b258812526f7a9d Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Thu, 24 Apr 2008 23:46:59 +0200 Subject: [PATCH 3/7] IRC_PART(): code and comment cleanup. --- src/ngircd/irc-channel.c | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/src/ngircd/irc-channel.c b/src/ngircd/irc-channel.c index 55770571..c678ceeb 100644 --- a/src/ngircd/irc-channel.c +++ b/src/ngircd/irc-channel.c @@ -286,29 +286,36 @@ IRC_JOIN( CLIENT *Client, REQUEST *Req ) } /* IRC_JOIN */ +/** + * Handler for the IRC "PART" command. + */ GLOBAL bool -IRC_PART( CLIENT *Client, REQUEST *Req ) +IRC_PART(CLIENT * Client, REQUEST * Req) { CLIENT *target; char *chan; - assert( Client != NULL ); - assert( Req != NULL ); + assert(Client != NULL); + assert(Req != NULL); if (Req->argc < 1 || Req->argc > 2) return IRC_WriteStrClient(Client, ERR_NEEDMOREPARAMS_MSG, - Client_ID(Client), Req->command); + Client_ID(Client), Req->command); - /* Wer ist der Absender? */ - if( Client_Type( Client ) == CLIENT_SERVER ) target = Client_Search( Req->prefix ); - else target = Client; - if( ! target ) return IRC_WriteStrClient( Client, ERR_NOSUCHNICK_MSG, Client_ID( Client ), Req->prefix ); + /* Get the sender */ + if (Client_Type(Client) == CLIENT_SERVER) + target = Client_Search(Req->prefix); + else + target = Client; + if (!target) + return IRC_WriteStrClient(Client, ERR_NOSUCHNICK_MSG, + Client_ID(Client), Req->prefix); - /* Channel-Namen durchgehen */ + /* Loop over all the given channel names */ chan = strtok(Req->argv[0], ","); while (chan) { - Channel_Part(target, Client, chan, Req->argc > 1 ? Req->argv[1] : Client_ID(target)); - + Channel_Part(target, Client, chan, + Req->argc > 1 ? Req->argv[1] : Client_ID(target)); chan = strtok(NULL, ","); } return CONNECTED; From 54b17fc20162941d03a17ddf78706c5fdc5cfff4 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Thu, 24 Apr 2008 23:47:33 +0200 Subject: [PATCH 4/7] Channel_Part(): Code and comment cleanup. --- src/ngircd/channel.c | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/src/ngircd/channel.c b/src/ngircd/channel.c index 35922c2b..a4eca1f1 100644 --- a/src/ngircd/channel.c +++ b/src/ngircd/channel.c @@ -201,25 +201,33 @@ Channel_Join( CLIENT *Client, char *Name ) } /* Channel_Join */ +/** + * Remove client from channel. + * This function lets a client lead a channel. First, the function checks + * if the channel exists and the client is a member of it and sends out + * appropriate error messages if not. The real work is done by the function + * Remove_Client(). + */ GLOBAL bool -Channel_Part( CLIENT *Client, CLIENT *Origin, const char *Name, const char *Reason ) +Channel_Part(CLIENT * Client, CLIENT * Origin, const char *Name, const char *Reason) { CHANNEL *chan; - assert( Client != NULL ); - assert( Name != NULL ); - assert( Reason != NULL ); + assert(Client != NULL); + assert(Name != NULL); + assert(Reason != NULL); - chan = Channel_Search( Name ); - if(( ! chan ) || ( ! Get_Cl2Chan( chan, Client ))) - { - IRC_WriteStrClient( Client, ERR_NOSUCHCHANNEL_MSG, Client_ID( Client ), Name ); + chan = Channel_Search(Name); + if ((!chan) || (!Get_Cl2Chan(chan, Client))) { + IRC_WriteStrClient(Client, ERR_NOSUCHCHANNEL_MSG, + Client_ID(Client), Name); return false; } - /* User aus Channel entfernen */ - if( ! Remove_Client( REMOVE_PART, chan, Client, Origin, Reason, true)) return false; - else return true; + if (!Remove_Client(REMOVE_PART, chan, Client, Origin, Reason, true)) + return false; + else + return true; } /* Channel_Part */ From 523a6fad097cedd31a6931a29d91bab0d391df63 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Thu, 24 Apr 2008 23:52:54 +0200 Subject: [PATCH 5/7] Report ERR_NOTONCHANNEL when trying to part a channel one is not member of. When trying to part a channel ("PART #channel") the client is not member of the daemon now correctly reports the numeric ERR_NOTONCHANNEL (442) insted of ERR_NOSUCHCHANNEL (403). --- src/ngircd/channel.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/ngircd/channel.c b/src/ngircd/channel.c index a4eca1f1..32f911a2 100644 --- a/src/ngircd/channel.c +++ b/src/ngircd/channel.c @@ -218,11 +218,16 @@ Channel_Part(CLIENT * Client, CLIENT * Origin, const char *Name, const char *Rea assert(Reason != NULL); chan = Channel_Search(Name); - if ((!chan) || (!Get_Cl2Chan(chan, Client))) { + if (!chan) { IRC_WriteStrClient(Client, ERR_NOSUCHCHANNEL_MSG, Client_ID(Client), Name); return false; } + if (!Get_Cl2Chan(chan, Client)) { + IRC_WriteStrClient(Client, ERR_NOTONCHANNEL_MSG, + Client_ID(Client), Name); + return false; + } if (!Remove_Client(REMOVE_PART, chan, Client, Origin, Reason, true)) return false; From 09968ee8435bfd18b6b0219b2b5b05a1a9484a5c Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sun, 20 Apr 2008 22:48:05 +0200 Subject: [PATCH 6/7] Documentation: get rid of some more references to CVS, switch to GIT. (cherry picked from commit 6e9389b86c906c53a7797b8ced87a19195e16333) --- ChangeLog | 4 ---- INSTALL | 10 +++------- README | 10 +++------- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8457e8d4..33536007 100644 --- a/ChangeLog +++ b/ChangeLog @@ -758,7 +758,3 @@ ngIRCd 0.0.2, 06.01.2002 ngIRCd 0.0.1, 31.12.2001 - erste oeffentliche Version von ngIRCd als "public preview" :-) - - --- -$Id: ChangeLog,v 1.345 2008/03/18 20:12:47 fw Exp $ diff --git a/INSTALL b/INSTALL index 227c4626..60e7b5eb 100644 --- a/INSTALL +++ b/INSTALL @@ -51,9 +51,9 @@ on modern UNIX-like systems that are supported by GNU autoconf and GNU automake ("configure") should be no problem. The normal installation procedure after getting (and expanding) the source -files (using a distribution archive or CVS) is as following: +files (using a distribution archive or GIT) is as following: - 1) ./autogen.sh [only necessary when using CVS] + 1) ./autogen.sh [only necessary when using GIT] 2) ./configure 3) make 4) make install @@ -77,7 +77,7 @@ doc/ directory: sample-ngircd.conf. The first step, autogen.sh, is only necessary if the configure-script isn't already generated. This never happens in official ("stable") releases in -tar.gz-archives, but when using CVS. +tar.gz-archives, but when using GIT. This step is therefore only interesting for developers. @@ -244,7 +244,3 @@ These parameters could be passed to the ngIRCd: Use "--help" to see a short help text describing all available parameters the server understands, with "--version" the ngIRCd shows its version number. In both cases the server exits after the output. - - --- -$Id: INSTALL,v 1.26 2007/04/08 11:39:08 alex Exp $ diff --git a/README b/README index f01e6d60..2eff7bce 100644 --- a/README +++ b/README @@ -67,9 +67,9 @@ the newest information about the ngIRCd and the most recent ("stable") releases there. If you are interested in the latest development versions (which are not -always stable), then please read the section "CVS" on the homepage and -the file "doc/CVS.txt" which describes the use of CVS, the "Concurrent -Versioning System". +always stable), then please read the section about "GIT" on the homepage and +the file "doc/GIT.txt" which describes the use of GIT, the version control +system used by ngIRCd (homepage: http://git.or.cz/). VI. Bugs @@ -85,7 +85,3 @@ There you can read about known bugs and limitations, too. If you have critics, patches or something else, please feel free to post a mail to the ngIRCd mailing list: (please see for details). - - --- -$Id: README,v 1.25 2007/10/04 15:18:48 alex Exp $ From 33b1204349ed1d26564b562599414fa2718db276 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sun, 20 Apr 2008 23:10:22 +0200 Subject: [PATCH 7/7] Get rid of cvs-version.* and CVSDATE definition. (cherry picked from commit b187fac244f4e14705f882ba7c43eef0238e2830) --- src/ngircd/Makefile.am | 19 +--------- src/ngircd/irc-info.c | 26 ++++---------- src/ngircd/irc-login.c | 80 ++++++++++++++++++++---------------------- src/ngircd/ngircd.c | 10 ++---- 4 files changed, 49 insertions(+), 86 deletions(-) diff --git a/src/ngircd/Makefile.am b/src/ngircd/Makefile.am index cfa45e19..1a5119f2 100644 --- a/src/ngircd/Makefile.am +++ b/src/ngircd/Makefile.am @@ -36,7 +36,7 @@ noinst_HEADERS = ngircd.h array.h channel.h client.h conf.h conn.h conn-func.h \ defines.h messages.h clean-local: - rm -f check-version check-help lint.out cvs-version.* + rm -f check-version check-help lint.out maintainer-clean-local: rm -f Makefile Makefile.in @@ -77,23 +77,6 @@ lint: || echo "Result: no warnings found."; \ echo; [ $$warnings -gt 0 ] && exit 1 -ngircd.c: cvs-version.h - -irc-login.c: cvs-version.h - -irc-info.c: cvs-version.h - -cvs-version.h: cvs-date - -cvs-date: - grep VERSION ../config.h | grep "CVS" \ - && echo "#define CVSDATE \"$$( grep "\$$Id" $(srcdir)/*.c \ - | $(AWK) "{ print \$$9 }" | sort | tail -1 \ - | sed -e "s/\//-/g" )\"" > cvs-version.new \ - || echo "" > cvs-version.new - diff cvs-version.h cvs-version.new 2>/dev/null \ - || cp cvs-version.new cvs-version.h - TESTS = check-version check-help # -eof- diff --git a/src/ngircd/irc-info.c b/src/ngircd/irc-info.c index 87ed2ad0..dbeed978 100644 --- a/src/ngircd/irc-info.c +++ b/src/ngircd/irc-info.c @@ -1,6 +1,6 @@ /* * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001-2005 Alexander Barton (alex@barton.de) + * Copyright (c)2001-2008 Alexander Barton (alex@barton.de) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -14,8 +14,6 @@ #include "portab.h" -static char UNUSED id[] = "$Id: irc-info.c,v 1.44 2008/02/17 13:26:42 alex Exp $"; - #include "imp.h" #include #include @@ -25,7 +23,6 @@ static char UNUSED id[] = "$Id: irc-info.c,v 1.44 2008/02/17 13:26:42 alex Exp $ #include #include "ngircd.h" -#include "cvs-version.h" #include "conn-func.h" #include "conn-zip.h" #include "client.h" @@ -640,9 +637,6 @@ GLOBAL bool IRC_VERSION( CLIENT *Client, REQUEST *Req ) { CLIENT *target, *prefix; -#ifdef CVSDATE - char ver[12], vertxt[30]; -#endif assert( Client != NULL ); assert( Req != NULL ); @@ -669,21 +663,15 @@ IRC_VERSION( CLIENT *Client, REQUEST *Req ) return CONNECTED; } - /* mit Versionsinfo antworten */ - IRC_SetPenalty( Client, 1 ); -#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 ); - 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 + /* send version information */ + IRC_SetPenalty(Client, 1); + return IRC_WriteStrClient(Client, RPL_VERSION_MSG, Client_ID(prefix), + PACKAGE_NAME, PACKAGE_VERSION, + NGIRCd_DebugLevel, Conf_ServerName, + NGIRCd_VersionAddition); } /* IRC_VERSION */ - static bool write_whoreply(CLIENT *Client, CLIENT *c, const char *channelname, const char *flags) { diff --git a/src/ngircd/irc-login.c b/src/ngircd/irc-login.c index 1f7038ee..dd436192 100644 --- a/src/ngircd/irc-login.c +++ b/src/ngircd/irc-login.c @@ -1,6 +1,6 @@ /* * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de) + * Copyright (c)2001-2008 Alexander Barton (alex@barton.de) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -14,8 +14,6 @@ #include "portab.h" -static char UNUSED id[] = "$Id: irc-login.c,v 1.55 2008/02/05 11:46:55 fw Exp $"; - #include "imp.h" #include #include @@ -35,7 +33,6 @@ static char UNUSED id[] = "$Id: irc-login.c,v 1.55 2008/02/05 11:46:55 fw Exp $" #include "irc.h" #include "irc-info.h" #include "irc-write.h" -#include "cvs-version.h" #include "exp.h" #include "irc-login.h" @@ -507,7 +504,7 @@ IRC_PING(CLIENT *Client, REQUEST *Req) Client_ID(from), Client_ID(Client)); #else /* Some clients depend on the argument being returned in the PONG - * reply (not mentioned in any RFC, though) */ + * reply (not mentioned in any RFC, though) */ return IRC_WriteStrClient(Client, "PONG %s :%s", Client_ID(from), Req->argv[0]); #endif @@ -573,61 +570,60 @@ IRC_PONG(CLIENT *Client, REQUEST *Req) static bool -Hello_User( CLIENT *Client ) +Hello_User(CLIENT * Client) { -#ifdef CVSDATE - char ver[12], vertxt[30]; -#endif - - assert( Client != NULL ); + assert(Client != NULL); /* Check password ... */ - if( strcmp( Client_Password( Client ), Conf_ServerPwd ) != 0 ) - { + if (strcmp(Client_Password(Client), Conf_ServerPwd) != 0) { /* 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); + 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; } - Log( LOG_NOTICE, "User \"%s\" registered (connection %d).", Client_Mask( Client ), Client_Conn( Client )); + Log(LOG_NOTICE, "User \"%s\" registered (connection %d).", + Client_Mask(Client), Client_Conn(Client)); /* 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 )); + 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 )); - memmove( ver + 4, ver + 5, 2 ); - memmove( 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 + if (!IRC_WriteStrClient + (Client, RPL_WELCOME_MSG, Client_ID(Client), Client_Mask(Client))) + return false; + if (!IRC_WriteStrClient + (Client, RPL_YOURHOST_MSG, Client_ID(Client), + Client_ID(Client_ThisServer()), PACKAGE_VERSION, TARGET_CPU, + TARGET_VENDOR, TARGET_OS)) + return false; + if (!IRC_WriteStrClient + (Client, RPL_CREATED_MSG, Client_ID(Client), NGIRCd_StartStr)) + return false; + if (!IRC_WriteStrClient + (Client, RPL_MYINFO_MSG, Client_ID(Client), + Client_ID(Client_ThisServer()), PACKAGE_VERSION, USERMODES, + CHANMODES)) + return false; /* Features supported by this server (005 numeric, ISUPPORT), * see for details. */ - if (! IRC_Send_ISUPPORT(Client)) + if (!IRC_Send_ISUPPORT(Client)) return DISCONNECTED; - Client_SetType( Client, CLIENT_USER ); + Client_SetType(Client, CLIENT_USER); - if( ! IRC_Send_LUSERS( Client )) return DISCONNECTED; - if( ! IRC_Show_MOTD( Client )) return DISCONNECTED; + if (!IRC_Send_LUSERS(Client)) + return DISCONNECTED; + if (!IRC_Show_MOTD(Client)) + return DISCONNECTED; /* Suspend the client for a second ... */ - IRC_SetPenalty( Client, 1 ); + IRC_SetPenalty(Client, 1); return CONNECTED; } /* Hello_User */ diff --git a/src/ngircd/ngircd.c b/src/ngircd/ngircd.c index 5b872fc5..626b8b23 100644 --- a/src/ngircd/ngircd.c +++ b/src/ngircd/ngircd.c @@ -40,7 +40,6 @@ #include "client.h" #include "channel.h" #include "conf.h" -#include "cvs-version.h" #include "lists.h" #include "log.h" #include "parse.h" @@ -410,12 +409,9 @@ Fill_Version( void ) strlcat( NGIRCd_VersionAddition, "/", sizeof( NGIRCd_VersionAddition )); strlcat( NGIRCd_VersionAddition, TARGET_OS, sizeof( NGIRCd_VersionAddition )); -#ifdef CVSDATE - snprintf( NGIRCd_Version, sizeof NGIRCd_Version,"%s %s(%s)-%s", PACKAGE_NAME, PACKAGE_VERSION, CVSDATE, NGIRCd_VersionAddition); -#else - snprintf( NGIRCd_Version, sizeof NGIRCd_Version, "%s %s-%s", PACKAGE_NAME, PACKAGE_VERSION, NGIRCd_VersionAddition); -#endif -} /* Fill_Version */ + snprintf(NGIRCd_Version, sizeof NGIRCd_Version, "%s %s-%s", + PACKAGE_NAME, PACKAGE_VERSION, NGIRCd_VersionAddition); + } /* Fill_Version */ /**