From 3994523b5cb70770f0facad2169f875cb7ffa6d8 Mon Sep 17 00:00:00 2001 From: Ludwig Krispenz Date: Thu, 9 Mar 2017 15:59:22 +0100 Subject: [PATCH] fix for ticket 49161 if the DEL part of the replace of memberof fails because it does not exist just add the new memberof values --- ldap/servers/plugins/memberof/memberof.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ldap/servers/plugins/memberof/memberof.c b/ldap/servers/plugins/memberof/memberof.c index 81ef092..a2c2387 100644 --- a/ldap/servers/plugins/memberof/memberof.c +++ b/ldap/servers/plugins/memberof/memberof.c @@ -1855,6 +1855,13 @@ memberof_modop_one_replace_r(Slapi_PBlock *pb, MemberOfConfig *config, 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); + } } } -- 2.5.5