Issue 5293 - ldapdelete issue
Summary: ldapdelete issue
Status: VERIFIED FIXED
Alias: None
Product: OpenLDAP
Classification: Unclassified
Component: slapd (show other issues)
Version: unspecified
Hardware: All All
: --- normal
Target Milestone: ---
Assignee: OpenLDAP project
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-20 18:14 UTC by chitrav@us.ibm.com
Modified: 2014-08-01 21:06 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description chitrav@us.ibm.com 2007-12-20 18:14:39 UTC
Full_Name: Chitra Venkatramani
Version: 2.3.27
OS: Redhat
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (162.83.178.28)


I added a set of entries to the LDAP server, with sub directories, such as -- 

dn: cn=aa,ou=chitrav,o=ibm.com
dn: ou=bb,ou=chitrav,o=ibm.com
dn: cn=bb1,ou=bb,ou=chitrav,o=ibm.com
dn: ou=cc,ou=bb,ou=chitrav,o=ibm.com
dn: cn=cc1,ou=cc,ou=bb,ou=chitrav,o=ibm.com

when I tried to do an ldapdelete command with -r option, I get the following
error for every entry in the server, although all the entries do get deleted. 

ldap_search: Server is unwilling to perform (53)
        additional info: critical control unavailable in context

On looking at the ldapdelete.c source code, lines 390 and 391 say
 c.ldctl_oid = LDAP_CONTROL_SUBENTRIES;
 c.ldctl_iscritical = 1;

Marking the iscritical flag to 0, makes the error go away. 

I am not sure what this control does. This seems like a bug though. 
If so, please let me know what the fix should be, and in which release it will
be available.
Please let me know if you need any more information.
thanks
-Chitra


Comment 1 ando@openldap.org 2007-12-27 19:45:52 UTC
chitrav@us.ibm.com wrote:

> when I tried to do an ldapdelete command with -r option, I get the following
> error for every entry in the server, although all the entries do get deleted. 
> 
> ldap_search: Server is unwilling to perform (53)
>         additional info: critical control unavailable in context
> 
> On looking at the ldapdelete.c source code, lines 390 and 391 say
>  c.ldctl_oid = LDAP_CONTROL_SUBENTRIES;
>  c.ldctl_iscritical = 1;
> 
> Marking the iscritical flag to 0, makes the error go away. 
> 
> I am not sure what this control does. This seems like a bug though. 
> If so, please let me know what the fix should be, and in which release it will
> be available.

This control was added because in early implementations of sync
replication subentries were added to the database to contain
replication-related data; without the control, a recursive delete would
have failed since the subentry wouldn't be returned by the search that
determines the list of DNs to be deleted.

The fact slapd complains seems to indicate you're using a backend that
does not support that control.  AFAIK, it is only supported by back-bdb
(and back-hdb); usually, you shouldn't be using anything else, though.

p.

p.



Ing. Pierangelo Masarati
OpenLDAP Core Team

SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
---------------------------------------
Office:  +39 02 23998309
Mobile:  +39 333 4963172
Email:   pierangelo.masarati@sys-net.it
---------------------------------------


Comment 2 ando@openldap.org 2007-12-27 19:46:11 UTC
changed notes
Comment 3 ando@openldap.org 2008-02-09 11:35:40 UTC
changed notes
changed state Open to Test
moved from Incoming to Software Bugs
Comment 4 Quanah Gibson-Mount 2008-02-12 20:18:43 UTC
changed notes
changed state Test to Release
Comment 5 Quanah Gibson-Mount 2008-02-20 02:32:59 UTC
changed notes
changed state Release to Closed
Comment 6 Howard Chu 2009-02-17 05:23:15 UTC
moved from Software Bugs to Archive.Software Bugs
Comment 7 OpenLDAP project 2014-08-01 21:06:50 UTC
LDAP_CONTROL_SUBENTRIES only supported by back-bdb/hdb
fixed in HEAD
fixed in 2.4.8