diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2015-06-01 21:18:32 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2015-06-14 21:47:19 +0200 |
commit | 10bf907b6d463a5cd776a056cb182bc9f8765bf4 (patch) | |
tree | c9ce1f81efb020a4c7abcc26b508e7c423bde610 /src/providers/ipa | |
parent | 05d935cc9d04f03522d0bb44598d22d99b085926 (diff) | |
download | sssd-10bf907b6d463a5cd776a056cb182bc9f8765bf4.tar.gz sssd-10bf907b6d463a5cd776a056cb182bc9f8765bf4.tar.xz sssd-10bf907b6d463a5cd776a056cb182bc9f8765bf4.zip |
IPA: Read forest name for trusted forest roots as well
This will reduce special-casing when establishing forest roots as all
domains will contain the forest name.
Additionally, AD subdomains already contain the forest name.
Reviewed-by: Sumit Bose <sbose@redhat.com>
Diffstat (limited to 'src/providers/ipa')
-rw-r--r-- | src/providers/ipa/ipa_subdomains.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/providers/ipa/ipa_subdomains.c b/src/providers/ipa/ipa_subdomains.c index b67f1d9ca..28693cbd0 100644 --- a/src/providers/ipa/ipa_subdomains.c +++ b/src/providers/ipa/ipa_subdomains.c @@ -329,6 +329,7 @@ static errno_t ipa_subdom_get_forest(TALLOC_CTX *mem_ctx, { int ret; struct ldb_dn *dn = NULL; + const char *name; const struct ldb_val *val; char *forest = NULL; @@ -340,6 +341,20 @@ static errno_t ipa_subdom_get_forest(TALLOC_CTX *mem_ctx, } if (ipa_subdom_is_member_dom(dn) == false) { + ret = sysdb_attrs_get_string(attrs, IPA_CN, &name); + if (ret) { + DEBUG(SSSDBG_OP_FAILURE, "sysdb_attrs_get_string failed.\n"); + goto done; + } + + forest = talloc_strdup(mem_ctx, name); + if (forest == NULL) { + DEBUG(SSSDBG_OP_FAILURE, "talloc_strndup failed.\n"); + ret = ENOMEM; + goto done; + } + + DEBUG(SSSDBG_TRACE_INTERNAL, "The forest name is %s\n", forest); ret = EOK; goto done; } |