X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=clients%2Ftools%2Fldapvc.c;h=73166b1d8ee61a083a976d564ce483b34c4552bf;hb=0ba4206ed93215f2c5c2d12d16342d6a846c278a;hp=9cdd44c90106c92036aa9378c716d613156fb80e;hpb=be897b6679395d951eb41699cdb93650b4f17334;p=openldap diff --git a/clients/tools/ldapvc.c b/clients/tools/ldapvc.c index 9cdd44c901..73166b1d8e 100644 --- a/clients/tools/ldapvc.c +++ b/clients/tools/ldapvc.c @@ -299,7 +299,7 @@ main( int argc, char *argv[] ) dn = argv[optind++]; } if (argc - optind > 0) { - cred.bv_val = argv[optind++]; + cred.bv_val = strdup(argv[optind++]); cred.bv_len = strlen(cred.bv_val); } if (argc - optind > 0) { @@ -469,8 +469,8 @@ main( int argc, char *argv[] ) } skip: - if ( verbose || ( code != LDAP_SUCCESS ) || - matcheddn || text || refs || ctrls ) + if ( verbose || code != LDAP_SUCCESS || + ( matcheddn && *matcheddn ) || ( text && *text ) || refs || ctrls ) { printf( _("Result: %s (%d)\n"), ldap_err2string( code ), code ); @@ -501,6 +501,7 @@ skip: ber_bvfree( scookie ); ber_bvfree( scred ); ber_memfree( diag ); + free( cred.bv_val ); /* disconnect from server */ tool_unbind( ld );