int i;
char *newline = "\n";
struct berval passwd = BER_BVNULL;
- struct berval hash;
+ struct berval hash = BER_BVNULL;
#ifdef LDAP_DEBUG
/* tools default to "none", so that at least LDAP_DEBUG_ANY
}
lutil_passwd_hash( &passwd, scheme, &hash, &text );
- if( hash.bv_val == NULL ) {
+ if ( BER_BVISNULL( &hash ) ) {
fprintf( stderr,
"Password generation failed for scheme %s: %s\n",
scheme, text ? text : "" );
#ifdef SLAPD_MODULES
module_kill();
#endif
+ if ( !BER_BVISNULL( &hash ) ) {
+ ber_memfree( hash.bv_val );
+ }
+ if ( passwd.bv_val != hash.bv_val && !BER_BVISNULL( &passwd ) ) {
+ ber_memfree( passwd.bv_val );
+ }
return rc;
}