directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pierre-Arnaud Marcelot ...@marcelot.net>
Subject [API] [ApacheDS] Problems with extended operations
Date Fri, 02 Aug 2013 17:13:13 GMT
Hi,

Recently, a user raised an issue on the LDAP API indicating that result codes from extended
operations were lost.
See https://issues.apache.org/jira/browse/DIRAPI-151.

I took some time to debug the issue and it turns out it's true and it's even bigger than that,
the response is simply not parsed correctly and internally in the API the object we return
is just a newly created response for the given extended operation.
The result code returned from the server is completely forgotten, same thing for the specific
values included in the extended operation response.

On the server, Emmanuel also found that responses were not correctly encoded.

We're currently fixing that.

This issue lead us to have a look at how the extended operations are loaded and I took a chance
at simplifying a bit (which will help resolving the issue) the list of factories we need to
append in the command line.
We had properties like:
- default.controls
- extra.controls
- default.extendedOperation.requests
- default.extendedOperation.responses
- extra.extendedOperations

In the end, those default/extra distinctions didn't mean much and we needed to have them all
the time.
Also, the titles of the properties like 'default.extendedOperation.responses' were misleading
as it was only intended for some specific kind of unsolicited response (having no request).

I simplified it to two simple properties:
- apacheds.controls
- apacheds.extendedOperations

All tests, scripts and installers have been updated to reflect this change, so everything
should be covered.

Thoughts?

Regards,
Pierre-Arnaud
Mime
View raw message