ngIRCd: Patch to update ngIRCd 0.10.3 to version 0.10.4. ChangeLog | 8 ++++++-- configure.in | 6 +++--- contrib/Debian/changelog | 6 ++++++ contrib/ngircd.spec | 2 +- src/ngircd/channel.c | 4 ++-- src/ngircd/irc-channel.c | 6 ++++-- 6 files changed, 22 insertions(+), 10 deletions(-) Index: ChangeLog =================================================================== RCS file: /srv/cvs/ngircd/ngircd/ChangeLog,v retrieving revision 1.302.2.19 retrieving revision 1.302.2.21 diff -u -p -r1.302.2.19 -r1.302.2.21 --- ChangeLog 31 Jul 2007 19:33:51 -0000 1.302.2.19 +++ ChangeLog 7 Jan 2008 20:57:39 -0000 1.302.2.21 @@ -1,7 +1,7 @@ ngIRCd - Next Generation IRC Server - (c)2001-2007 Alexander Barton, + (c)2001-2008 Alexander Barton, alex@barton.de, http://www.barton.de/ ngIRCd is free software and published under the @@ -9,6 +9,10 @@ -- ChangeLog -- +ngIRCd 0.10.4 (2008-01-07) + + - SECURITY: IRC_PART could reference invalid memory, causing + ngircd to crash. ngIRCd 0.10.3 (2007-07-31) @@ -694,4 +698,4 @@ ngIRCd 0.0.1, 31.12.2001 -- -$Id: ChangeLog,v 1.302.2.19 2007/07/31 19:33:51 alex Exp $ +$Id: ChangeLog,v 1.302.2.21 2008/01/07 20:57:39 alex Exp $ Index: configure.in =================================================================== RCS file: /srv/cvs/ngircd/ngircd/configure.in,v retrieving revision 1.118.2.13 retrieving revision 1.118.2.14 diff -u -p -r1.118.2.13 -r1.118.2.14 --- configure.in 31 Jul 2007 19:07:59 -0000 1.118.2.13 +++ configure.in 7 Jan 2008 20:57:39 -0000 1.118.2.14 @@ -1,6 +1,6 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2007 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,13 @@ # (at your option) any later version. # Please read the file COPYING, README and AUTHORS for more information. # -# $Id: configure.in,v 1.118.2.13 2007/07/31 19:07:59 alex Exp $ +# $Id: configure.in,v 1.118.2.14 2008/01/07 20:57:39 alex Exp $ # # -- Initialisation -- AC_PREREQ(2.50) -AC_INIT(ngircd, 0.10.3) +AC_INIT(ngircd, 0.10.4) AC_CONFIG_SRCDIR(src/ngircd/ngircd.c) AC_CANONICAL_TARGET AM_INIT_AUTOMAKE(1.6) Index: contrib/ngircd.spec =================================================================== RCS file: /srv/cvs/ngircd/ngircd/contrib/ngircd.spec,v retrieving revision 1.4.6.6 retrieving revision 1.4.6.7 diff -u -p -r1.4.6.6 -r1.4.6.7 --- contrib/ngircd.spec 31 Jul 2007 19:08:00 -0000 1.4.6.6 +++ contrib/ngircd.spec 7 Jan 2008 20:57:40 -0000 1.4.6.7 @@ -1,5 +1,5 @@ %define name ngircd -%define version 0.10.3 +%define version 0.10.4 %define release 1 %define prefix %{_prefix} Index: contrib/Debian/changelog =================================================================== RCS file: /srv/cvs/ngircd/ngircd/contrib/Debian/changelog,v retrieving revision 1.12.2.9 retrieving revision 1.12.2.10 diff -u -p -r1.12.2.9 -r1.12.2.10 --- contrib/Debian/changelog 31 Jul 2007 19:08:01 -0000 1.12.2.9 +++ contrib/Debian/changelog 7 Jan 2008 21:05:37 -0000 1.12.2.10 @@ -1,3 +1,9 @@ +ngircd (0.10.4-0ab1) unstable; urgency=high + + * New "upstream" release: 0.10.4 - fixing a security bug. + + -- Alexander Barton Mon, 7 Jan 2008 22:04:44 +0100 + ngircd (0.10.3-0ab1) unstable; urgency=high * New "upstream" release: 0.10.3 - fixing a security bug. Index: src/ngircd/channel.c =================================================================== RCS file: /srv/cvs/ngircd/ngircd/src/ngircd/channel.c,v retrieving revision 1.56.2.3 retrieving revision 1.56.2.4 diff -u -p -r1.56.2.3 -r1.56.2.4 --- src/ngircd/channel.c 3 Apr 2007 22:08:52 -0000 1.56.2.3 +++ src/ngircd/channel.c 31 Jul 2007 20:48:15 -0000 1.56.2.4 @@ -17,7 +17,7 @@ #include "portab.h" -static char UNUSED id[] = "$Id: channel.c,v 1.56.2.3 2007/04/03 22:08:52 fw Exp $"; +static char UNUSED id[] = "$Id: channel.c,v 1.56.2.4 2007/07/31 20:48:15 alex Exp $"; #include "imp.h" #include @@ -602,7 +602,7 @@ Channel_IsMemberOf( CHANNEL *Chan, CLIEN assert( Chan != NULL ); assert( Client != NULL ); - return Get_Cl2Chan(Chan, Client); + return Get_Cl2Chan(Chan, Client) != NULL; } /* Channel_IsMemberOf */ Index: src/ngircd/irc-channel.c =================================================================== RCS file: /srv/cvs/ngircd/ngircd/src/ngircd/irc-channel.c,v retrieving revision 1.35.2.4 retrieving revision 1.35.2.5 diff -u -p -r1.35.2.4 -r1.35.2.5 --- src/ngircd/irc-channel.c 31 Jul 2007 18:54:30 -0000 1.35.2.4 +++ src/ngircd/irc-channel.c 7 Jan 2008 11:41:44 -0000 1.35.2.5 @@ -14,7 +14,7 @@ #include "portab.h" -static char UNUSED id[] = "$Id: irc-channel.c,v 1.35.2.4 2007/07/31 18:54:30 alex Exp $"; +static char UNUSED id[] = "$Id: irc-channel.c,v 1.35.2.5 2008/01/07 11:41:44 fw Exp $"; #include "imp.h" #include @@ -270,7 +270,9 @@ IRC_PART( CLIENT *Client, REQUEST *Req ) assert( Req != NULL ); /* Falsche Anzahl Parameter? */ - if(( Req->argc > 2 )) return IRC_WriteStrClient( Client, ERR_NEEDMOREPARAMS_MSG, Client_ID( Client ), Req->command ); + if (Req->argc < 1 || Req->argc > 2) + return IRC_WriteStrClient(Client, ERR_NEEDMOREPARAMS_MSG, + Client_ID(Client), Req->command); /* Wer ist der Absender? */ if( Client_Type( Client ) == CLIENT_SERVER ) target = Client_Search( Req->prefix );