1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-23 09:57:40 +03:00

s4-pydsdb: Provide control of if we should write index attributes when reloading a schema

This allows us to carefully control the loading of the schema.

Andrew Bartlett
This commit is contained in:
Andrew Bartlett 2012-08-09 14:23:12 +10:00
parent 1a1f01ee7a
commit ef87b4e4f1
2 changed files with 8 additions and 6 deletions

View File

@ -873,7 +873,9 @@ static PyObject *py_dsdb_set_schema_from_ldb(PyObject *self, PyObject *args)
struct ldb_context *from_ldb;
struct dsdb_schema *schema;
int ret;
if (!PyArg_ParseTuple(args, "OO", &py_ldb, &py_from_ldb))
char write_attributes = true;
if (!PyArg_ParseTuple(args, "OO|b",
&py_ldb, &py_from_ldb, &write_attributes))
return NULL;
PyErr_LDB_OR_RAISE(py_ldb, ldb);
@ -886,7 +888,7 @@ static PyObject *py_dsdb_set_schema_from_ldb(PyObject *self, PyObject *args)
return NULL;
}
ret = dsdb_reference_schema(ldb, schema, true);
ret = dsdb_reference_schema(ldb, schema, write_attributes);
PyErr_LDB_ERROR_IS_ERR_RAISE(py_ldb_get_exception(), ret, ldb);
Py_RETURN_NONE;

View File

@ -608,11 +608,11 @@ accountExpires: %u
def load_partition_usn(self, base_dn):
return dsdb._dsdb_load_partition_usn(self, base_dn)
def set_schema(self, schema):
self.set_schema_from_ldb(schema.ldb)
def set_schema(self, schema, write_attributes=True):
self.set_schema_from_ldb(schema.ldb, write_attributes=write_attributes)
def set_schema_from_ldb(self, ldb_conn):
dsdb._dsdb_set_schema_from_ldb(self, ldb_conn)
def set_schema_from_ldb(self, ldb_conn, write_attributes=True):
dsdb._dsdb_set_schema_from_ldb(self, ldb_conn, write_attributes)
def dsdb_DsReplicaAttribute(self, ldb, ldap_display_name, ldif_elements):
'''convert a list of attribute values to a DRSUAPI DsReplicaAttribute'''