From bcbb35b0888696db53f63f095e9bf07e493cb9ee Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 19 Aug 2011 17:36:22 +1000 Subject: s4-dsdb: assert that base DNs are used correctly this will catch future programmer errors with incorrect base DNs Pair-Programmed-With: Andrew Bartlett --- source4/dsdb/common/util.c | 3 +++ source4/dsdb/samdb/ldb_modules/util.c | 5 +++++ 2 files changed, 8 insertions(+) (limited to 'source4/dsdb') diff --git a/source4/dsdb/common/util.c b/source4/dsdb/common/util.c index 22f092c127..ac380e9db6 100644 --- a/source4/dsdb/common/util.c +++ b/source4/dsdb/common/util.c @@ -3875,6 +3875,9 @@ int dsdb_search(struct ldb_context *ldb, char *expression = NULL; TALLOC_CTX *tmp_ctx = talloc_new(mem_ctx); + /* cross-partitions searches with a basedn break multi-domain support */ + SMB_ASSERT(basedn == NULL || (dsdb_flags & DSDB_SEARCH_SEARCH_ALL_PARTITIONS) == 0); + res = talloc_zero(tmp_ctx, struct ldb_result); if (!res) { talloc_free(tmp_ctx); diff --git a/source4/dsdb/samdb/ldb_modules/util.c b/source4/dsdb/samdb/ldb_modules/util.c index dfb8600187..48600e718b 100644 --- a/source4/dsdb/samdb/ldb_modules/util.c +++ b/source4/dsdb/samdb/ldb_modules/util.c @@ -127,6 +127,8 @@ int dsdb_module_search_tree(struct ldb_module *module, tmp_ctx = talloc_new(mem_ctx); + /* cross-partitions searches with a basedn break multi-domain support */ + SMB_ASSERT(basedn == NULL || (dsdb_flags & DSDB_SEARCH_SEARCH_ALL_PARTITIONS) == 0); res = talloc_zero(tmp_ctx, struct ldb_result); if (!res) { @@ -198,6 +200,9 @@ int dsdb_module_search(struct ldb_module *module, char *expression; struct ldb_parse_tree *tree; + /* cross-partitions searches with a basedn break multi-domain support */ + SMB_ASSERT(basedn == NULL || (dsdb_flags & DSDB_SEARCH_SEARCH_ALL_PARTITIONS) == 0); + tmp_ctx = talloc_new(mem_ctx); if (format) { -- cgit