]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
pyldb: py_ldb_dn_get_casefold() uses PyErr_LDB_DN_OR_RAISE()
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>
Wed, 10 Apr 2024 02:40:42 +0000 (14:40 +1200)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 10 Apr 2024 05:13:32 +0000 (05:13 +0000)
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
# Conflicts:
# selftest/knownfail.d/ldb-use-after-free-segfault

lib/ldb/pyldb.c
selftest/knownfail.d/pyldb-segfaults

index 0987aaf262f76320cb8321e136d13fd34bfd3a6d..ea8df507f56357697a3fea98024f842cfc6a9822 100644 (file)
@@ -465,10 +465,13 @@ static PyObject *py_ldb_dn_is_null(PyObject *self,
        return PyBool_FromLong(ldb_dn_is_null(dn));
 }
 
-static PyObject *py_ldb_dn_get_casefold(PyLdbDnObject *self,
+static PyObject *py_ldb_dn_get_casefold(PyObject *self,
                PyObject *Py_UNUSED(ignored))
 {
-       const char *s = ldb_dn_get_casefold(self->dn);
+       const char *s = NULL;
+       struct ldb_dn *dn = NULL;
+       PyErr_LDB_DN_OR_RAISE(self, dn);
+       s = ldb_dn_get_casefold(dn);
        if (s == NULL) {
                PyErr_NoMemory();
                return NULL;
index 71b473d083bb71470821acb2bc146fc0322759d5..4e7f25eee9bc3735dae8752f50d5f7fd66102aeb 100644 (file)
@@ -1,5 +1,3 @@
 ^samba\.tests\.segfault\.samba\.tests\.segfault\.SegfaultTests\.test_ldb_use_after_free_dn_assign_disconnecting_connection\(ad_dc\)
 ^samba\.tests\.segfault\.samba\.tests\.segfault\.SegfaultTests\.test_ldb_use_after_free_dn_assign_disconnecting_connection_add_child_later\(ad_dc\)
-^samba\.tests\.segfault\.samba\.tests\.segfault\.SegfaultTests\.test_ldb_use_after_free_dn_assign_disconnecting_connection_later\(ad_dc\)
-^samba\.tests\.segfault\.samba\.tests\.segfault\.SegfaultTests\.test_ldb_use_after_free_dn_assign_disconnecting_connection_later__no_del\(ad_dc\)
 ^samba\.tests\.segfault\.samba\.tests\.segfault\.SegfaultTests\.test_ldb_use_after_free_dn_assign_disconnecting_connection_no_del\(ad_dc\)