[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
(ITS#4777) translucent overlay breaks if first mod in modlist is a delete
Full_Name: Karsten Kuenne
Version: 2.3.30
OS: Solaris 10
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (216.223.241.248)
The following loop in translucent.c at around line 297 fails if the first mod in
the modlist is a delete and eventually crashes slapd:
....
Debug(LDAP_DEBUG_TRACE,
"=> translucent_modify: silently dropping delete: %s\n",
m->sml_desc->ad_cname.bv_val, 0, 0);
==> for(mm = op->orm_modlist; mm->sml_next != m; mm = mm->sml_next);
mm->sml_next = m->sml_next;
m->sml_next = NULL;
slap_mods_free(m, 1);
....
I tried to come up with a fix but so far I always got a "Invalid modification"
because I apparently got something wrong so I worked around it on the client
side for now.