From abdde67d897327565656490d57d9fbab43b20ba9 Mon Sep 17 00:00:00 2001 From: Ludwig Krispenz Date: Feb 27 2018 13:34:38 +0000 Subject: Ticket 49161 - memberof fails if group is moved into scope if the DEL part of the replace of memberof fails because it does not exist just add the new memberof values Reviwed by: Mark, thanks --- diff --git a/ldap/servers/plugins/memberof/memberof.c b/ldap/servers/plugins/memberof/memberof.c index 263b2ee..87313ff 100644 --- a/ldap/servers/plugins/memberof/memberof.c +++ b/ldap/servers/plugins/memberof/memberof.c @@ -1721,6 +1721,13 @@ memberof_modop_one_replace_r(Slapi_PBlock *pb, MemberOfConfig *config, int mod_o replace_mod.mod_values = replace_val; } rc = memberof_add_memberof_attr(mods, op_to, config->auto_add_oc); + if (rc == LDAP_NO_SUCH_ATTRIBUTE) { + /* the memberof values to be replaced do not exist + * just add the new values */ + mods[0] = mods[1]; + mods[1] = NULL; + rc = memberof_add_memberof_attr(mods, op_to, config->auto_add_oc); + } } }