On Wed, Dec 23, 2009 at 11:46:54AM -0800, Matthew Backes wrote:
> We should also walk thru the Software Enhancement requests and
> decide which to accept and which to reject. Currently there are 37
> outstanding.
Here's a few things we talked about on IRC:
* Re-design and re-implemenation of the C LDAP (and LBER) API.
per
http://scratchpad.wikia.com/wiki/LDAP_C_API
** No global state; everything in app or connection handles. No
exceptions, no mercy!
** Use function pointers to allow override of
*** Memory allocation
*** Non-reentrant functions
*** Have sane internal defaults as well as defaults for nspr, apr,
glib, etc
** Better defaults! (v3 etc)
** Simple function alternatives for simple apps
** Use structures instead of many arguments.
For the "thread-free" piece I might throw in
http://git.samba.org/?p=samba.git;a=blob;f=source3/include/tldap.h;h=cd50...
and
http://git.samba.org/?p=samba.git;a=blob;f=source3/lib/tldap.c;h=fa56763a...
It is really far from being complete and very much tied to
Samba APIs like talloc and tevent, but the _send and _recv
call model (multiple _recv calls for a search request) might
provide an alternative API that I found pretty usable so
far.
Volker