From: Ondřej Kuzník Date: Thu, 23 Jan 2020 12:30:50 +0000 (+0000) Subject: ITS#9126 Add a missed normalised copy of pwdChangedTime X-Git-Tag: OPENLDAP_REL_ENG_2_4_49~10 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=46f6251481beb9297189297026da07479046ce07;p=thirdparty%2Fopenldap.git ITS#9126 Add a missed normalised copy of pwdChangedTime --- diff --git a/servers/slapd/overlays/ppolicy.c b/servers/slapd/overlays/ppolicy.c index 36cd411b15..a8f8f3073b 100644 --- a/servers/slapd/overlays/ppolicy.c +++ b/servers/slapd/overlays/ppolicy.c @@ -2107,10 +2107,11 @@ do_modify: mods = (Modifications *) ch_calloc( sizeof( Modifications ), 1 ); mods->sml_op = LDAP_MOD_REPLACE; mods->sml_numvals = 1; - mods->sml_values = (BerVarray) ch_malloc( 2 * sizeof( struct berval ) ); + mods->sml_values = (BerVarray) ch_calloc( sizeof( struct berval ), 2 ); + mods->sml_nvalues = (BerVarray) ch_calloc( sizeof( struct berval ), 2 ); + ber_dupbv( &mods->sml_values[0], ×tamp ); - BER_BVZERO( &mods->sml_values[1] ); - assert( !BER_BVISNULL( &mods->sml_values[0] ) ); + ber_dupbv( &mods->sml_nvalues[0], ×tamp ); } else if (attr_find(e->e_attrs, ad_pwdChangedTime )) { mods = (Modifications *) ch_calloc( sizeof( Modifications ), 1 ); mods->sml_op = LDAP_MOD_DELETE;