diff options
author | Joseph Sutton <josephsutton@catalyst.net.nz> | 2021-09-25 11:12:16 +1200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2021-10-28 08:58:16 +0000 |
commit | a2e0682d928678f2d9538fc861cba08413e54446 (patch) | |
tree | c73b10ba1d360a2132bdc62caa2ebe99307e7ca6 | |
parent | d2189833c7ede6ac2cd919c80aaadac14a0a193a (diff) | |
download | samba-a2e0682d928678f2d9538fc861cba08413e54446.tar.gz |
pyldb: Fix deleting an ldb.Message dn
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14845
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14848
Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
[abartlet@samba.org backported from commit d7af772de88885f46708329ff7bb5798da91d2c7
due to conflicts in knownfail.d/python-segfaults]
-rw-r--r-- | lib/ldb/pyldb.c | 4 | ||||
-rw-r--r-- | selftest/knownfail.d/python-segfaults | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/lib/ldb/pyldb.c b/lib/ldb/pyldb.c index 7e86f7413c3..e31d2d083bd 100644 --- a/lib/ldb/pyldb.c +++ b/lib/ldb/pyldb.c @@ -3741,6 +3741,10 @@ static PyObject *py_ldb_msg_get_dn(PyLdbMessageObject *self, void *closure) static int py_ldb_msg_set_dn(PyLdbMessageObject *self, PyObject *value, void *closure) { struct ldb_message *msg = pyldb_Message_AsMessage(self); + if (value == NULL) { + PyErr_SetString(PyExc_AttributeError, "cannot delete dn"); + return -1; + } if (!pyldb_Dn_Check(value)) { PyErr_SetString(PyExc_TypeError, "expected dn"); return -1; diff --git a/selftest/knownfail.d/python-segfaults b/selftest/knownfail.d/python-segfaults index c0bd391714b..d129dab7d47 100644 --- a/selftest/knownfail.d/python-segfaults +++ b/selftest/knownfail.d/python-segfaults @@ -1,2 +1,3 @@ samba.tests.segfault.samba.tests.segfault.SegfaultTests.test_net_replicate_init__3 -samba.tests.segfault.samba.tests.segfault.SegfaultTests.test_ldb_msg_del_dn +samba.tests.segfault.samba.tests.segfault.SegfaultTests.test_dnsp_string_list +samba.tests.segfault.samba.tests.segfault.SegfaultTests.test_dns_record |