From: Sascha G. <sa...@fr...> - 2000-03-16 03:08:10
|
[...] > Sasha, > > this looks like a great start! much smaller and understandable. and even > the lber interface is exposed. Dynamic loading complained about missing lber functions - so I fixed it by supporting it ... > > but which particular LDAP library was this created against? Freebsd: openldap-1.2.9 without kerberos-support (its no problem to support kerberos) Linux: slapd 1.2.7-Release (Tue Nov 9 01:18:47 GMT 1999) Solaris: version=slapd 1.2.7-Release (Thu Jan 13 21:52:44 MET 2000) >the various ldap > header files that are around (netscape/openldap/umich) may not work with > what you have - as not all those functions would be available everywhere > i reckon. Thats right. I'll be installing an additional (netscape/umich) - environment on all my three platforms - then I need to be automatically running "cvs checkout swig-ldap; make test" every day on each platform to see what I have done to the sources ... PS: Solaris 8 supports ldap as well, so again another lib and some different header for that as well ... ... in a month or two I can have another sun running solaris 8 > > also, in order to retain the niceness features that the current module > has (exceptions, integrated memory management) a lot of wrapping needs to > happen. Exceptions are really easy to implement. Memory management and datastructures need work. C-datatypes can be mapped to something more useful by "typemaps" - have a look at the brandnew site http://swig.cs.uchicago.edu/typemap/index.php3 to get an idea - I'll have to consult the manual to understand all this mind-transforming stuff ... . > while it this is possible and probably a good design, keeping it > independent, there is still i believe some uncertainty about what the > 'top level' python LDAP client API should look like. > We can support several API's by providing several kind of interface-files: - low-level C (just survive) - classic (your module-existing programs run without modification) - dbm (cool) - corba (luxus) > i reckon the API should follow what CORBA are doing. Can you please send me an URL or a document to help me understand how corba supports LDAP ? >Alternatively, the > python dbm module interface could be used - but X.500 DNs are just > so less compatible than most database's free-form keys... Okay - i'll be having a look at the dbm interface to get an opinion. >originally > I tried to base the python interface on an RFC, but it just doesn't seem > to fit very where. fo...@so... and mi...@ms... have some good > ideas in this area, but have been quiet of late. > > > You are welcome to join and/or use this for extending your efforts to > > convince python to talk LDAP ... > > so the .i files that you have shown me look like a nice way of getting > rid of a lot of redundant existing code, but at this first glance, i > think it needs a lot of work to get it to be more portable, and also > our minds need to be made up on what the LDAP api should really look like.. > Which platforms do you want to support - these platforms need the "cvs checkout swig-ldap; make test" ; cvs commit test.out so I can see if they need help ... > i'd encourage you to work this into the python-ldap source tree. A first step could be implementing the classic interface. [...] Sascha |