Default of modrdn input field was displayed as HTML.
Proper handling of UTF-8 characters in
namingContexts attribute of RootDSE.
Handling of form data more robust.
Corrected handling of RDNs when DN has only one component.
Avoid any LDAP operations before first bind.
0.8.0
Release Date: 2000-12-02
Nice displaying of certificate and CRL attributes including certificate
extensions if at least sub-module asn1 of
Pisces
is installed on the system (automatically detected).
Credits go to Jeremy Hylton for his work on the ASN.1 parser and helping me understanding it.
New parameter web2ldapcnf.hosts.ldap_def['timeout']
for specifying a timeout (seconds) for search operations.
Login not longer mandantory at beginning of session.
User can explictly bind after connecting to server.
Avoid making a LDAP connection when not necessary
(e.g. when displaying add form).
Displayed LDAP URLs are all URL-quoted now and handling of LDAP URLs
stored in attribute is more robust and smarter.
Some efforts were done to browse global directories
in a reasonable manner.
Simple support for direct use of LDAP URLs (short hack): [web2ldap URL]/ldapurl?[LDAP URL]
will display the entry or do a search.
Gracefully handling of exceptions which make a re-login
of a user necessary: ldap.INSUFFICIENT_ACCESS, ldap.INVALID_CREDENTIALS,
ldap.INAPPROPRIATE_AUTH etc. User can re-login and retry command.
Smarter handling of LDAPv3 referrals: Instead of relying on the
referral handling of the underlying lib the referral exceptions
are caught and the user is prompted for new bind DN / password
for connecting to the referred host and repeat the action before
the referral was received.
Credits go to Konstantin Chuguev
for patching python-ldap to do correct error handling
when result() method is called.
Compability issues:
web2ldap now makes use of the new Unicode features introduced
in recent Python versions because the handling of different character
encoding is faster and cleaner.
=> You have to upgrade your Python installation at least to
version 2.0.
For cleaner exception handling python-ldap prior to 1.8
is not longer supported since the ldap.LDAPError
exception base class is used now. This affects mainly
the Windows platform since I do not know of pre-compiled
python-ldap version later than 1.5. Feel free to contribute!
Moved parameters web2ldapcnf.misc.search_attrsonly
and web2ldapcnf.misc.search_attrs
to web2ldapcnf.hosts.ldap_def. You have to adjust
your local configuration files!
Code cleaning:
All LDAP-related strings are internally handled as
Unicode string types.
Handle more input field stuff with the fine cgiforms module.
LDAP session objects. First step towards session handling
with pickeable session objects.
Simplified many function calls into module w2lcore.
All exception handling of LDAP errors is done in module
w2lhandler except exceptions which needs special
handling in a specific context.
Bug fixes:
Correct handling of DNs with quoted comma.
Some code was too case-sensitive with
handling attribute type names.
Fixed some compability issues with Python 1.6+.
Fixed some vCard issues. Still not perfect but usable most times.
Correct handling of special characters when putting together
LDAP filter string (RFC 2254).