[Date Prev][Date Next] [Chronological] [Thread] [Top]

(ITS#5861) Assert control on Add request fails

Full_Name: Hallvard B Furuseth
Version: HEAD
OS: Linux
Submission from: (NULL) (
Submitted by: hallvard

RFC 4528 says the Assert control is appropriate for Add.  Slapd disagrees:

$ ldapadd -xhlocalhost:3890 -e\!assert='(objectClass=organization)' <test.ldif 
adding new entry "o=test"
ldap_add: Critical extension is unavailable (12)
        additional info: critical extension is unavailable

back-bdb and back-sql do not apply the assert control to Add.

The message comes from slapd/controls.c.  Don't fix that before fixing
Add in the backends, otherwise critical controls can be ignored.

Another strangeness: overlays/syncprov.c applies the Assert control to
Compare but not other operations.  I don't know why, there are no
comments about it.