]> git.sur5r.net Git - openldap/blobdiff - clients/tools/ldapvc.c
Import back-mdb
[openldap] / clients / tools / ldapvc.c
index 9cdd44c90106c92036aa9378c716d613156fb80e..73166b1d8ee61a083a976d564ce483b34c4552bf 100644 (file)
@@ -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 );