lib/ldb: add LDB_CHANGETYPE_DELETE support to ldb_ldif_to_pyobject()
authorStefan Metzmacher <metze@samba.org>
Mon, 13 Mar 2023 13:55:12 +0000 (14:55 +0100)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 22 Mar 2023 22:10:32 +0000 (22:10 +0000)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
lib/ldb/pyldb.c

index a7f05a6e0fb5f49a47eac63bdf609f46821594c2..31b9bd189674db56e7db5b5a7f0bd1a4031cbf39 100644 (file)
@@ -1726,6 +1726,15 @@ static PyObject *ldb_ldif_to_pyobject(struct ldb_ldif *ldif)
        case LDB_CHANGETYPE_MODIFY:
                obj = PyLdbMessage_FromMessage(ldif->msg);
                break;
+       case LDB_CHANGETYPE_DELETE:
+               if (ldif->msg->num_elements != 0) {
+                       PyErr_Format(PyExc_ValueError,
+                                    "CHANGETYPE(DELETE) with num_elements=%u",
+                                    ldif->msg->num_elements);
+                       return NULL;
+               }
+               obj = pyldb_Dn_FromDn(ldif->msg->dn);
+               break;
        default:
                PyErr_Format(PyExc_NotImplementedError,
                             "Unsupported LDB_CHANGETYPE(%u)",