use strdup() to add oper hostname mask.

This commit is contained in:
Florian Westphal 2005-04-16 09:23:01 +00:00
parent 8b17579e60
commit 77faf14b29
3 changed files with 9 additions and 8 deletions

View File

@ -14,7 +14,7 @@
#include "portab.h"
static char UNUSED id[] = "$Id: conf.c,v 1.75 2005/03/22 18:57:08 alex Exp $";
static char UNUSED id[] = "$Id: conf.c,v 1.76 2005/04/16 09:23:01 fw Exp $";
#include "imp.h"
#include <assert.h>
@ -804,7 +804,6 @@ Handle_GLOBAL( int Line, char *Var, char *Arg )
LOCAL void
Handle_OPERATOR( int Line, char *Var, char *Arg )
{
unsigned int len;
assert( Line > 0 );
assert( Var != NULL );
assert( Arg != NULL );
@ -825,14 +824,12 @@ Handle_OPERATOR( int Line, char *Var, char *Arg )
if( strcasecmp( Var, "Mask" ) == 0 )
{
if (Conf_Oper[Conf_Oper_Count - 1].mask) return; /* Hostname already configured */
len = strlen( Arg ) + 1;
Conf_Oper[Conf_Oper_Count - 1].mask = malloc( len );
Conf_Oper[Conf_Oper_Count - 1].mask = strdup( Arg );
if (! Conf_Oper[Conf_Oper_Count - 1].mask) {
Config_Error( LOG_ERR, "%s, line %d: Cannot allocate memory for operator mask: %s", NGIRCd_ConfFile, Line, strerror(errno) );
return;
}
strlcpy( Conf_Oper[Conf_Oper_Count - 1].mask, Arg, len);
return;
}
Config_Error( LOG_ERR, "%s, line %d (section \"Operator\"): Unknown variable \"%s\"!", NGIRCd_ConfFile, Line, Var );

View File

@ -9,14 +9,14 @@
# 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.7 2003/01/03 22:04:14 alex Exp $
# $Id: Makefile.am,v 1.8 2005/04/16 09:23:01 fw Exp $
#
AUTOMAKE_OPTIONS = ansi2knr
noinst_LIBRARIES = libngportab.a
libngportab_a_SOURCES = strlcpy.c vsnprintf.c
libngportab_a_SOURCES = strlcpy.c strdup.c vsnprintf.c
check_PROGRAMS = portabtest

View File

@ -8,7 +8,7 @@
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
* $Id: portab.h,v 1.20 2005/04/09 18:27:16 alex Exp $
* $Id: portab.h,v 1.21 2005/04/16 09:23:01 fw Exp $
*
* Portability functions and declarations (header for libngbportab).
*/
@ -147,6 +147,10 @@ extern size_t strlcat PARAMS(( char *dst, const char *src, size_t size ));
extern size_t strlcpy PARAMS(( char *dst, const char *src, size_t size ));
#endif
#ifndef HAVE_STRDUP
extern char * strdup PARAMS(( const char *s ));
#endif
#ifndef HAVE_VSNPRINTF
#include <stdarg.h>
extern int vsnprintf PARAMS(( char *str, size_t count, const char *fmt, va_list args ));