summaryrefslogtreecommitdiffstats
path: root/src/providers/ipa/ipa_common.c
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2011-02-14 14:59:18 -0500
committerStephen Gallagher <sgallagh@redhat.com>2011-02-17 07:49:46 -0500
commit89be00e5656755489a9397a82a58c08e19608de4 (patch)
tree16c31803ecacb1c098c3d61f732f202e35c96f39 /src/providers/ipa/ipa_common.c
parentcc2b267e14db7073e7247b52cc9d82dfdf280076 (diff)
downloadsssd-89be00e5656755489a9397a82a58c08e19608de4.tar.gz
sssd-89be00e5656755489a9397a82a58c08e19608de4.tar.xz
sssd-89be00e5656755489a9397a82a58c08e19608de4.zip
Point the IPA provider at the compat tree for netgroups
We don't yet have support for IPA's internal representation of netgroups, so we need to use its compatibility mode for the time being.
Diffstat (limited to 'src/providers/ipa/ipa_common.c')
-rw-r--r--src/providers/ipa/ipa_common.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/providers/ipa/ipa_common.c b/src/providers/ipa/ipa_common.c
index 401c19305..c146735c7 100644
--- a/src/providers/ipa/ipa_common.c
+++ b/src/providers/ipa/ipa_common.c
@@ -372,12 +372,31 @@ int ipa_get_id_options(struct ipa_options *ipa_opts,
if (NULL == dp_opt_get_string(ipa_opts->id->basic,
SDAP_NETGROUP_SEARCH_BASE)) {
+#if 0
ret = dp_opt_set_string(ipa_opts->id->basic, SDAP_NETGROUP_SEARCH_BASE,
dp_opt_get_string(ipa_opts->id->basic,
SDAP_SEARCH_BASE));
if (ret != EOK) {
goto done;
}
+#else
+ /* We don't yet have support for the native representation
+ * of netgroups in IPA. For now, we need to point at the
+ * compat tree
+ */
+ value = talloc_asprintf(tmpctx, "cn=ng,cn=compat,%s", basedn);
+ if (!value) {
+ ret = ENOMEM;
+ goto done;
+ }
+
+ ret = dp_opt_set_string(ipa_opts->id->basic,
+ SDAP_NETGROUP_SEARCH_BASE,
+ value);
+ if (ret != EOK) {
+ goto done;
+ }
+#endif
DEBUG(6, ("Option %s set to %s\n",
ipa_opts->id->basic[SDAP_NETGROUP_SEARCH_BASE].opt_name,
dp_opt_get_string(ipa_opts->id->basic,