]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#10530 syncrepl: detect malformed SYNC_ID_SET messages 902/head
authorOndřej Kuzník <ondra@mistotebe.net>
Tue, 14 Jul 2026 11:21:04 +0000 (12:21 +0100)
committerOndřej Kuzník <ondra@mistotebe.net>
Tue, 14 Jul 2026 11:21:04 +0000 (12:21 +0100)
servers/slapd/syncrepl.c

index 8b95368425750128acb5685827fe7b8ea7f90b7e..ba9fe28676805302aaff20ffe592be79b17579a5 100644 (file)
@@ -1995,7 +1995,7 @@ result_done:
                                        syncUUIDs = NULL;
                                        rc = ber_scanf( ber, "[W]", &syncUUIDs );
                                        ber_scanf( ber, /*"{"*/ "}" );
-                                       if ( rc != LBER_ERROR ) {
+                                       if ( rc != LBER_ERROR && syncUUIDs ) {
                                                if ( refreshDeletes ) {
                                                        syncrepl_del_nonpresent( op, si, syncUUIDs,
                                                                &syncCookie, m );
@@ -4146,6 +4146,10 @@ presentlist_insert(
 {
        char *val;
 
+       if ( syncUUID->bv_len != UUIDLEN ) {
+               return 1;
+       }
+
 #ifdef HASHUUID
        Avlnode **av;
        unsigned short s;