diff options
Diffstat (limited to 'src/db')
-rw-r--r-- | src/db/sysdb.c | 6 | ||||
-rw-r--r-- | src/db/sysdb.h | 3 | ||||
-rw-r--r-- | src/db/sysdb_ops.c | 2 |
3 files changed, 7 insertions, 4 deletions
diff --git a/src/db/sysdb.c b/src/db/sysdb.c index c79a6334..89512529 100644 --- a/src/db/sysdb.c +++ b/src/db/sysdb.c @@ -281,10 +281,12 @@ errno_t sysdb_group_dn_name(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx, return sysdb_get_rdn(sysdb, mem_ctx, _dn, NULL, _name); } -struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx) +struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx, + struct sss_domain_info *dom) { - return ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_DOM_BASE, sysdb->domain->name); + return ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_DOM_BASE, dom->name); } + struct ldb_dn *sysdb_base_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx) { return ldb_dn_new(mem_ctx, sysdb->ldb, SYSDB_BASE); diff --git a/src/db/sysdb.h b/src/db/sysdb.h index d558884b..3a5e36da 100644 --- a/src/db/sysdb.h +++ b/src/db/sysdb.h @@ -333,7 +333,8 @@ struct ldb_dn *sysdb_netgroup_base_dn(struct sysdb_ctx *sysdb, struct sss_domain_info *dom); errno_t sysdb_group_dn_name(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx, const char *dn_str, char **name); -struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx); +struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx, + struct sss_domain_info *dom); struct ldb_dn *sysdb_base_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx); struct ldb_dn *sysdb_custom_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx, const char *object_name, diff --git a/src/db/sysdb_ops.c b/src/db/sysdb_ops.c index 2364f17b..4b0e1676 100644 --- a/src/db/sysdb_ops.c +++ b/src/db/sysdb_ops.c @@ -663,7 +663,7 @@ int sysdb_get_new_id(struct sysdb_ctx *sysdb, return ENOMEM; } - base_dn = sysdb_domain_dn(sysdb, tmp_ctx); + base_dn = sysdb_domain_dn(sysdb, tmp_ctx, sysdb->domain); if (!base_dn) { talloc_zfree(tmp_ctx); return ENOMEM; |