X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslurpd%2Fargs.c;h=9d9a6baa2e3ac7edc4f5ab6fa380319a13dd76b5;hb=d84ffb62a6c7528ef711547194307af629e0d082;hp=f6a348a9c363000c18e883bfceda630e0a9c3baa;hpb=cbabd269a5975d488c6b8a00b81acc26e467b4da;p=openldap diff --git a/servers/slurpd/args.c b/servers/slurpd/args.c index f6a348a9c3..9d9a6baa2e 100644 --- a/servers/slurpd/args.c +++ b/servers/slurpd/args.c @@ -1,7 +1,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 1998-2004 The OpenLDAP Foundation. + * Copyright 1998-2005 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -79,7 +79,8 @@ doargs( while ( (i = getopt( argc, argv, "d:f:n:or:t:V" )) != EOF ) { switch ( i ) { - case 'd': /* set debug level and 'do not detach' flag */ + case 'd': { /* set debug level and 'do not detach' flag */ + int level; g->no_detach = 1; if ( optarg[0] == '?' ) { #ifdef LDAP_DEBUG @@ -108,14 +109,19 @@ doargs( return( -1 ); } #ifdef LDAP_DEBUG - ldap_debug |= atoi( optarg ); + if ( lutil_atoi( &level, optarg ) != 0 ) { + fprintf( stderr, "unable to parse debug flag \"%s\".\n", optarg ); + usage( g->myname ); + return( -1 ); + } + ldap_debug |= level; #else /* !LDAP_DEBUG */ - if ( atoi( optarg ) != 0 ) + if ( lutil_atoi( &level, optarg ) != 0 || level != 0 ) /* can't enable debugging - not built with debug code */ fputs( "must compile with LDAP_DEBUG for debugging\n", stderr ); #endif /* LDAP_DEBUG */ - break; + } break; case 'f': /* slapd config file */ LUTIL_SLASHPATH( optarg ); g->slapd_configfile = strdup( optarg );