1
0
mirror of https://github.com/samba-team/samba.git synced 2025-06-19 23:17:05 +03:00
Andrew Bartlett 401ba9c9cf s4:dsdb Move module configuration from each ldb into samba_dsdb.c
This makes getting the module order correct, the obligation of Samba4
developers, and not system administrators.  In particular, once an ldb
is updated to use only the 'samba_dsdb' module, no further changes to the
ldb should be required when upgrading to later Samba4 versions.

(thanks to metze for the suggestion of samba_dsdb as a long-term
stable name for the module)

Andrew Bartlett
2009-11-23 14:15:07 +01:00

55 lines
1.6 KiB
C

/*
Partitions ldb module
Copyright (C) Andrew Bartlett <abartlet@samba.org> 2006
Copyright (C) Stefan Metzmacher <metze@samba.org> 2007
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "includes.h"
#include "lib/ldb/include/ldb.h"
#include "lib/ldb/include/ldb_errors.h"
#include "lib/ldb/include/ldb_module.h"
#include "lib/ldb/include/ldb_private.h"
#include "dsdb/samdb/samdb.h"
#include "dsdb/samdb/ldb_modules/util.h"
#include "system/locale.h"
struct dsdb_partition {
struct ldb_module *module;
struct dsdb_control_current_partition *ctrl;
const char *backend_url;
DATA_BLOB orig_record;
};
struct partition_module {
const char **modules;
struct ldb_dn *dn;
};
struct partition_private_data {
struct dsdb_partition **partitions;
struct ldb_dn **replicate;
struct partition_module **modules;
const char *ldapBackend;
uint64_t metadata_seq;
uint32_t in_transaction;
struct ldb_message *forced_module_msg;
};
#include "dsdb/samdb/ldb_modules/partition_proto.h"