(loosely based on Volkers code)
*/
static int samba3sid_next_sid(struct ldb_module *module,
- TALLOC_CTX *mem_ctx, char **sid)
+ TALLOC_CTX *mem_ctx, char **sid,
+ struct ldb_request *parent)
{
TALLOC_CTX *tmp_ctx = talloc_new(mem_ctx);
struct ldb_result *res;
attrs,
DSDB_FLAG_NEXT_MODULE |
DSDB_SEARCH_SEARCH_ALL_PARTITIONS,
+ parent,
"(&(objectClass=sambaDomain)(sambaDomainName=%s))",
lpcfg_sam_name(ldb_get_opaque(ldb, "loadparm")));
if (ret != LDB_SUCCESS) {
ret = dsdb_module_constrainted_update_uint32(module, msg->dn,
"sambaNextRid",
- &sambaNextRid, &rid);
+ &sambaNextRid, &rid, parent);
if (ret != LDB_SUCCESS) {
ldb_asprintf_errstring(ldb,
__location__
return ldb_module_oom(module);
}
- ret = samba3sid_next_sid(module, new_msg, &sid);
+ ret = samba3sid_next_sid(module, new_msg, &sid, req);
if (ret != LDB_SUCCESS) {
return ret;
}
return ldb_next_request(module, new_req);
}
-_PUBLIC_ const struct ldb_module_ops ldb_samba3sid_module_ops = {
+static const struct ldb_module_ops ldb_samba3sid_module_ops = {
.name = "samba3sid",
.add = samba3sid_add,
};
+
+int ldb_samba3sid_module_init(const char *version)
+{
+ LDB_MODULE_CHECK_VERSION(version);
+ return ldb_register_module(&ldb_samba3sid_module_ops);
+}