]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#9282 fix crash in nonpresent_callback
authorHoward Chu <hyc@openldap.org>
Mon, 31 Aug 2020 18:36:10 +0000 (19:36 +0100)
committerHoward Chu <hyc@openldap.org>
Mon, 31 Aug 2020 18:36:10 +0000 (19:36 +0100)
In a standard Refresh present phase, the provider sends no cookie
since it is only listing the entries that existed as of the time
in the cookie the consumer sent. In this case the consumer only
needs to check entryCSNs against its last sent cookie.

servers/slapd/syncrepl.c

index 437a016db869de3304258fb54cdc766c3256ac8f..80fa03f8aff3b3b877a313211255a9ecd959a29e 100644 (file)
@@ -5480,6 +5480,9 @@ nonpresent_callback(
                if ( present_uuid == NULL ) {
                        int covered = 1; /* covered by our new contextCSN? */
 
+                       if ( !syncCookie )
+                               syncCookie = &si->si_syncCookie;
+
                        /* TODO: This can go once we can build a filter that takes care of
                         * the check for us */
                        a = attr_find( rs->sr_entry->e_attrs, slap_schema.si_ad_entryCSN );