]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
libcli: Add missing NULL checks
authorVolker Lendecke <vl@samba.org>
Wed, 26 Nov 2025 11:08:33 +0000 (12:08 +0100)
committerVolker Lendecke <vl@samba.org>
Wed, 7 Jan 2026 09:57:40 +0000 (09:57 +0000)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
libcli/ldap/ldap_message.c

index 19256c6ce62e02adf465ac7bc3c7b42b9c764c3a..eb2d77c84aecc48543ff53c83e6126ab24a487a7 100644 (file)
@@ -1217,6 +1217,12 @@ _PUBLIC_ NTSTATUS ldap_decode(struct asn1_data *data,
                                }
                                *r->creds.SASL.secblob = data_blob_talloc(r->creds.SASL.secblob,
                                                                          tmp_blob.data, tmp_blob.length);
+                               if ((tmp_blob.length != 0) &&
+                                   (r->creds.SASL.secblob->data == NULL)) {
+                                       data_blob_free(&tmp_blob);
+                                       return NT_STATUS_LDAP(
+                                               LDAP_OPERATIONS_ERROR);
+                               }
                                data_blob_free(&tmp_blob);
                        } else {
                                r->creds.SASL.secblob = NULL;
@@ -1245,6 +1251,11 @@ _PUBLIC_ NTSTATUS ldap_decode(struct asn1_data *data,
                        }
                        *r->SASL.secblob = data_blob_talloc(r->SASL.secblob,
                                                            tmp_blob.data, tmp_blob.length);
+                       if ((tmp_blob.length != 0) &&
+                           (r->SASL.secblob->data == NULL)) {
+                               data_blob_free(&tmp_blob);
+                               return NT_STATUS_LDAP(LDAP_OPERATIONS_ERROR);
+                       }
                        data_blob_free(&tmp_blob);
                } else {
                        r->SASL.secblob = NULL;