]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#9126 Add a missed normalised copy of pwdChangedTime
authorOndřej Kuzník <ondra@mistotebe.net>
Thu, 23 Jan 2020 12:30:50 +0000 (12:30 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Thu, 23 Jan 2020 23:54:21 +0000 (23:54 +0000)
servers/slapd/overlays/ppolicy.c

index 36cd411b15c51fc75444ed316a3e0ca31b3667a0..a8f8f3073b1f0926344a72cb303eeb8a0aca1b61 100644 (file)
@@ -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], &timestamp );
-                               BER_BVZERO( &mods->sml_values[1] );
-                               assert( !BER_BVISNULL( &mods->sml_values[0] ) );
+                               ber_dupbv( &mods->sml_nvalues[0], &timestamp );
                        } else if (attr_find(e->e_attrs, ad_pwdChangedTime )) {
                                mods = (Modifications *) ch_calloc( sizeof( Modifications ), 1 );
                                mods->sml_op = LDAP_MOD_DELETE;