|
From: Hans A. <Han...@Ph...> - 2002-03-27 15:34:26
|
On Wednesday, 27. March 2002 15:42, Michael Ströder wrote:
> No problem to give you write access to the CVS tree. But please don't
> check this in as is.
Ack.
> I need some time to comment. I hope to get back this easter weekend.
> Up to now I just had the chance to glance over it. E.g. I'd like to
> see an own class for SASL mechanisms in a separate sub-module
> ldap.sasl.
That's fine. Could someone please give me a hand with the distutil
stuff? (Joe?)
[...]
[schema support]
> Make sure to place it in a different sub-module - at least the Python
> interface part for it.
At the moment, I have no plans for an high-level python interface. What
I plan to do (and have paritally done) is a simple wrapper for the C
functions in ldap_schema (i.e. str2objectclass and friends). Is it ok
to just plug these wrappers into function.c? Saves some hazzles with
distutlis...
Probably it would be necessary to plug this into the
Lib/ldap/functions.py mechanism, right? I am not really sure if the
underlying C functions are thread safe...
For example:
------------------------------------------------------------------------
import ldap
a = ldap.str2objectclass("(2.5.6.4 NAME 'organization' SUP top
STRUCTURAL MUST o MAY ( userPassword $ searchGuide $ seeAlso $
businessCategory $ x121Address $ registeredAddress $
destinationIndicator $ preferredDeliveryMethod $ telexNumber $
teletexTerminalIdentifier $ telephoneNumber $ internationaliSDNNumber $
facsimileTelephoneNumber $ street $ postOfficeBox $ postalCode $
postalAddress $ physicalDeliveryOfficeName $ st $ l $ description ) )")
print a
------------------------------------------------------------------------
returns
------------------------------------------------------------------------
['2.5.6.4', ['organization'], '', 0, ['top'], 1, ['o'],
['userPassword', 'searchGuide', 'seeAlso', 'businessCategory',
'x121Address', 'registeredAddress', 'destinationIndicator',
'preferredDeliveryMethod', 'telexNumber', 'teletexTerminalIdentifier',
'telephoneNumber', 'internationaliSDNNumber',
'facsimileTelephoneNumber', 'street', 'postOfficeBox', 'postalCode',
'postalAddress', 'physicalDeliveryOfficeName', 'st', 'l',
'description']]
------------------------------------------------------------------------
The fields are
1. oid
2. List of names
3. Description string
4. Obsolete flag
5. List of SUP oid's
6. "kind" flag (0=ABSTRACT, 1=STRUCTURAL, 2=AUXILIARY)
7. list of "must" attributes
8. list of "may" attributes
BTW. does anybody know what the LDAPSchemaExtensionItem is about?
Hans
--
Han...@Ph...
|