From ace8bf84968d44d5164c50a68846de0656ea216a Mon Sep 17 00:00:00 2001 From: Pierangelo Masarati Date: Thu, 26 Oct 2006 23:49:44 +0000 Subject: [PATCH] complete fix to ITS#4665 --- servers/slapd/passwd.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/servers/slapd/passwd.c b/servers/slapd/passwd.c index 5c4390c337..26605ac8fb 100644 --- a/servers/slapd/passwd.c +++ b/servers/slapd/passwd.c @@ -282,8 +282,13 @@ old_good: * if it cares... */ rs->sr_err = op->o_bd->be_modify( op, rs ); + + /* be_modify() might have shuffled modifications */ + qpw->rs_mods = op->orm_modlist; + if ( rs->sr_err == LDAP_SUCCESS ) { rs->sr_rspdata = rsp; + } else if ( rsp ) { ber_bvfree( rsp ); rsp = NULL; @@ -520,8 +525,7 @@ void slap_passwd_generate( struct berval *pass ) { Debug( LDAP_DEBUG_TRACE, "slap_passwd_generate\n", 0, 0, 0 ); - pass->bv_val = NULL; - pass->bv_len = 0; + BER_BVZERO( pass ); /* * generate passwords of only 8 characters as some getpass(3) -- 2.39.5