diff options
author | Rob Crittenden <rcritten@redhat.com> | 2012-05-10 10:27:50 -0400 |
---|---|---|
committer | Martin Kosek <mkosek@redhat.com> | 2012-05-11 08:37:41 +0200 |
commit | 58732a83bc4ea99ce9894f07232b890ae26682ef (patch) | |
tree | f8cec1e06e1597e61f7724323f504d6374a287bd /daemons | |
parent | 1565ce3a8c39326f814c9781b3df24c42402c1b5 (diff) | |
download | freeipa-58732a83bc4ea99ce9894f07232b890ae26682ef.tar.gz freeipa-58732a83bc4ea99ce9894f07232b890ae26682ef.tar.xz freeipa-58732a83bc4ea99ce9894f07232b890ae26682ef.zip |
Return LDAP_SUCCESS on mods on a referral entry.
We currently return LDAP_REFERRAL which causes the mod to fail meaning
that referral entries cannot be changed.
All we really want to do is escape when we don't hvae an entry to modify.
https://fedorahosted.org/freeipa/ticket/2237
Diffstat (limited to 'daemons')
-rw-r--r-- | daemons/ipa-slapi-plugins/ipa-uuid/ipa_uuid.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/daemons/ipa-slapi-plugins/ipa-uuid/ipa_uuid.c b/daemons/ipa-slapi-plugins/ipa-uuid/ipa_uuid.c index 5430de4c9..2b07de45b 100644 --- a/daemons/ipa-slapi-plugins/ipa-uuid/ipa_uuid.c +++ b/daemons/ipa-slapi-plugins/ipa-uuid/ipa_uuid.c @@ -817,6 +817,15 @@ static int ipauuid_pre_op(Slapi_PBlock *pb, int modtype) ret = slapi_search_internal_get_entry(tmp_dn, NULL, &e, getPluginID()); slapi_sdn_free(&tmp_dn); + if (ret == LDAP_REFERRAL) { + /* we have a referral so nothing for us to do, but return + * success so we allow the MOD to proceed. + */ + ret = LDAP_SUCCESS; + free_entry = true; + goto done; + } + if (ret) { /* ok a client tried to modify an entry that doesn't exist. * Nothing to see here, move along ... */ |