From: Florian Westphal Date: Sun, 12 Jun 2005 17:21:46 +0000 (+0000) Subject: Make sure SimpleMessage() sends <= 512 chars X-Git-Tag: rel-0-9-0-pre1~29 X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;ds=sidebyside;h=1cf8ccd8fe1149fae0e24e740683eb024c628c7c;p=ngircd.git Make sure SimpleMessage() sends <= 512 chars --- diff --git a/src/ngircd/conn.c b/src/ngircd/conn.c index 3d0bce07..c04327e8 100644 --- a/src/ngircd/conn.c +++ b/src/ngircd/conn.c @@ -16,7 +16,7 @@ #include "portab.h" -static char UNUSED id[] = "$Id: conn.c,v 1.153 2005/06/12 16:28:55 alex Exp $"; +static char UNUSED id[] = "$Id: conn.c,v 1.154 2005/06/12 17:21:46 fw Exp $"; #include "imp.h" #include @@ -1650,15 +1650,16 @@ try_resolve: LOCAL void Simple_Message( int Sock, char *Msg ) { + char buf[COMMAND_LEN]; /* Write "simple" message to socket, without using compression * or even the connection write buffers. Used e.g. for error * messages by New_Connection(). */ - assert( Sock > NONE ); assert( Msg != NULL ); - (void)write( Sock, Msg, strlen( Msg ) ); - (void)write( Sock, "\r\n", 2 ); + strlcpy( buf, Msg, sizeof buf - 2); + strlcat( buf, "\r\n", sizeof buf); + (void)write( Sock, buf, strlen( buf ) ); } /* Simple_Error */