From c3cbb846d0bfbaa11fd255bada7fa5fe502d4d96 Mon Sep 17 00:00:00 2001 From: Anatoliy Atanasov Date: Mon, 10 May 2010 13:52:27 +0300 Subject: s4-rodc: Fix provision warnings by creating ntds objectGUID in provision --- source4/dsdb/pydsdb.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'source4/dsdb/pydsdb.c') diff --git a/source4/dsdb/pydsdb.c b/source4/dsdb/pydsdb.c index 45f8b6e1ca..c92eec2aaf 100644 --- a/source4/dsdb/pydsdb.c +++ b/source4/dsdb/pydsdb.c @@ -309,6 +309,26 @@ static PyObject *py_samdb_ntds_objectGUID(PyObject *self, PyObject *args) return result; } +static PyObject *py_dsdb_set_ntds_objectGUID(PyObject *self, PyObject *args) +{ + PyObject *py_ldb, *py_guid; + bool ret; + struct GUID guid; + struct ldb_context *ldb; + if (!PyArg_ParseTuple(args, "OO", &py_ldb, &py_guid)) + return NULL; + + PyErr_LDB_OR_RAISE(py_ldb, ldb); + GUID_from_string(PyString_AsString(py_guid), &guid); + + ret = samdb_set_ntds_objectGUID(ldb, &guid); + if (!ret) { + PyErr_SetString(PyExc_RuntimeError, "set_ntds_objectGUID failed"); + return NULL; + } + Py_RETURN_NONE; +} + static PyObject *py_dsdb_set_global_schema(PyObject *self, PyObject *args) { PyObject *py_ldb; @@ -399,6 +419,9 @@ static PyMethodDef py_dsdb_methods[] = { NULL }, { "samdb_ntds_objectGUID", (PyCFunction)py_samdb_ntds_objectGUID, METH_VARARGS, "get the NTDS objectGUID as a string"}, + { "dsdb_set_ntds_objectGUID", + (PyCFunction)py_dsdb_set_ntds_objectGUID, METH_VARARGS, + NULL }, { "dsdb_set_global_schema", (PyCFunction)py_dsdb_set_global_schema, METH_VARARGS, NULL }, { "dsdb_load_partition_usn", (PyCFunction)py_dsdb_load_partition_usn, -- cgit