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=cd50298...
and
http://git.samba.org/?p=samba.git;a=blob;f=source3/lib/tldap.c;h=fa56763a335...
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