Commit graph

14 commits

Author SHA1 Message Date
adam
99421e4b34 Changes 2.4.20:
* New wrapping of OpenLDAP's function ldap_sasl_bind_s() allows
  to intercept the SASL handshake

Modules/
* Added exceptions ldap.VLV_ERROR, ldap.X_PROXY_AUTHZ_FAILURE and
  ldap.AUTH_METHOD_NOT_SUPPORTED

Lib/
* Abandoned old syntax when raising ValueError in modules ldif and
  ldapurl, more information in some exceptions.
* ldap.ldapobject.LDAPObject:
  New convenience methods for SASL GSSAPI or EXTERNAL binds
* Refactored parts in ldif.LDIFParser:
  - New class attributes line_counter and byte_counter contain
    amount of LDIF data read so far
  - Renamed some internally used methods
  - Added support for parsing change records currently limited to
    changetype: modify
  - New separate methods parse_entry_records() (also called by parse())
    and parse_change_records()
  - Stricter order checking of dn:, changetype:, etc.
  - Removed non-existent 'AttrTypeandValueLDIF' from ldif.__all__
* New mix-in class ldap.controls.openldap.SearchNoOpMixIn
  adds convience method noop_search_st() to LDAPObject class
* Added new modules which implement the control classes
  for Virtual List View (see draft-ietf-ldapext-ldapv3-vlv) and
  Server-side Sorting (see RFC 2891)
  Note: This is still experimental! Even the API can change later.
2015-08-31 12:18:51 +00:00
adam
0627f9a6a0 Changes 2.4.19:
* Fixed missing ReconnectLDAPObject._reconnect_lock when pickling
* Added ldap.controls.pagedresults which is pure Python implementation of
  Simple Paged Results Control (see RFC 2696) and delivers the correct
  result size
2015-01-12 11:46:29 +00:00
wiz
6a07a89d89 Update to 2.4.16:
Released 2.4.16 2014-09-10

Changes since 2.4.15:

Lib/
* New convenience function ldap.dn.is_dn()
* New convenience function ldap.escape_str()
* New convenience methods LDAPObject.read_s() and
  LDAPObject.find_unique_entry()
* Fixed invoking start_tls_s() in ReconnectLDAPObject.reconnect()
  (thanks to Philipp Hahn)
2014-09-14 17:48:37 +00:00
wiz
1d674a83bf Update to 2.4.15.
Replace interpreter path in installed file.

Released 2.4.15 2014-03-24

Changes since 2.4.14:

Lib/
* Added missing modules ldap.controls.openldap and
  ldap.controls.pwdpolicy to setup.py
* Added missing imports to ldap.controls.pwdpolicy
* Fixed ldap.controls.pwdpolicy.decodeControlValue() to decode
  string of digits
* Support for X-SUBST in schema element class LDAPSyntax
* Support for X-ORDERED and X-ORIGIN in schema element class AttributeType
* ldapurl: New scope 'subordinates' defined in
  draft-sermersheim-ldap-subordinate-scope

Modules/
* New constant ldap.SCOPE_SUBORDINATE derived from ldap.h for
  draft-sermersheim-ldap-subordinate-scope
* Fixed constant ldap.sasl.CB_GETREALM (thanks to Martin Pfeifer)
2014-04-01 21:15:23 +00:00
adam
5b48ea9f50 Changes 2.4.14:
Lib/
* Added ldap.controls.openldap.SearchNoOpControl
* New method ldap.async.AsyncSearchHandler.afterFirstResult()
  for doing something right after successfully receiving but before
  processing first result
* Better log data written when invoking ldap.LDAPLock.acquire() and
  ldap.LDAPLock.release()
* LDAPObject and friends now pass `desc' to ldap.LDAPLock() which
  results in better logging
* ldapobject.ReconnectLDAPObject now uses internal class-wide
  lock for serializing reconnects
* Method signature of ReconnectLDAPObject.reconnect() changed to be able
  to call it with separate retry_max and retry_delay values
Modules/
* Added support for retrieving negotiated TLS version/cipher
  with LDAPObject.get_option() with the help of upcoming OpenLDAP libs
2014-03-03 17:01:34 +00:00
adam
73f844b234 Changes 2.4.8:
Lib/
* Fixed overzealous check for non-unique NAMEs in
  ldap.schema.subentry.SubSchema.__init__()
* Fixed typos in control decoding method
  ldap.controls.simple.OctetStringInteger.decodeControlValue()
* Added experimental support for draft-vchu-ldap-pwd-policy
2012-02-28 00:01:04 +00:00
adam
e8797eeefb Changes 2.4.6:
Lib/
* ldap.controls.ppolicy:
  Another fix for decoding the password policy response control

Changes 2.4.5:
Installation:
* defines for SASL and SSL in setup.cfg to be more friendly to
  Python setup tools (easy_install)
Lib/
* Fixed typo in ldap.functions._ldap_function_call() which
  always released ldap._ldap_module_lock instead of local lock
* ldap.controls.ppolicy:
  Fixed decoding the password policy response control
Demo/
* Demo script for ldap.controls.ppolicy
2011-11-28 10:58:50 +00:00
adam
ba108a066d Changes 2.4.1:
Modules:
* New LDAP option OPT_X_TLS_PACKAGE available in OpenLDAP 2.4.26+
  to determine the name of the SSL/TLS package OpenLDAP was
  built with
Lib/
* ldap.modlist.modifyModlist(): New key-word argument
  case_ignore_attr_types used to define attribute types for which
  comparison of old and new values should be case-insensitive
* Minor changes to which data is sent to debug output for various
  trace levels
* Now tag [1] is used in ldap.extop.dds.RefreshResponse in
  compliance with RFC 2589 (fix available for OpenLDAP ITS-6886)
* New sub-module ldap.controls.sessiontrack implements request control
  as described in draft-wahl-ldap-session (needs pyasn1_modules)

Changes since 2.4.0:
* OpenLDAP 2.4.11+ required to build
* Support for extracting LDAPv3 extended controls in
  LDAP_RES_SEARCH_ENTRY responses
  (see SF-2829057, thanks to Rich)
* Generic support for LDAPv3 extended operations (thanks to Rich)
Lib/
* new class API in ldap.controls, not backwards-compatible!
* new sub-modules for ldap.controls, some require pyasn1 and pyasn1_modules
* New methods LDAPObject.result4() and LDAPObject.extop_result()
* New (optional) class ldap.controls.AssertionControl
* New helper module ldap.logger contains file-like object which
  sends trace messages to logging.log()
* Removed non-functional method LDAPObject.set_cache_options()
* Removed unused dictionary ldap.controls.knownLDAPControls
Modules/
* ldapcontrol.c: Fixed encode_assertion_control() and function is no longer
  hidden behind ifdef-statement
2011-07-08 10:23:35 +00:00
obache
34870cf957 Update py-ldap to 2.3.8.
----------------------------------------------------------------
Released 2.3.8 2009-04-30

Changes since 2.3.7:

Lib/
* ldap.schema.models: More fault-tolerant parsing of SYNTAX in
  AttributeTypeDescription
* ldap.schema.tokenizer.split_tokens():
  More tolerant parsing of items separated only with a DOLLAR without
  surrounding white-spaces (because WSP is declared as zero or more spaces
  in RFC 4512)

----------------------------------------------------------------
Released 2.3.7 2009-04-09

Changes since 2.3.6:

Lib/
* urllib.quote() is now used in LDAPUrlExtension.unparse() to quote
  all special URL characters in extension values

Modules/
* Fixed ldapcontrol.c not to raise ldap.ENCODING_ERROR in
  function encode_rfc2696() on 64-bit systems
* Fixed seg fault if error code in a LDAP response was outside
  the known error codes and could not be mapped to a specific
  exception class (thanks to Sean)
* errors.c: LDAP_ERROR_MAX set to LDAP_PROXIED_AUTHORIZATION_DENIED
  if available in OpenLDAP header
* new exception class ldap.PROXIED_AUTHORIZATION_DENIED
  if available in OpenLDAP header
* Fixed functions.c not to raise ldap.ENCODING_ERROR in
  function l_ldap_str2dn() on 64-bit systems (see SF#2725356)

----------------------------------------------------------------
Released 2.3.6 2009-02-22

Changes since 2.3.5:

Lib/
* Importing ldap.str2dn() which directly imported _ldap.str2dn()
  is prohibited now (see SF#2181141)

Modules/
* get_option(): Added support for reading more SASL options.
  (OPT_X_SASL_MECH, OPT_X_SASL_REALM, OPT_X_SASL_AUTHCID and
  OPT_X_SASL_AUTHZID)
* Added some explicit type casts to fix issues while building
  with SunStudio
* Fixed compiling issue with GCC 4.4
  (see SF#2555793, thanks to Matej and Martin)

Doc/
* Clarified not to use ldap_get_dn() directly
* Fixed description of ldap.SASL_AVAIL and ldap.TLS_AVAIL
  (see SF#2555804, thanks to Matej and Martin)

----------------------------------------------------------------
Released 2.3.5 2008-07-06

Changes since 2.3.4:

Lib/
* Fixed methods ldap.cidict.__contains__() and
  ldap.schema.models.Entry.__contains__()
* FWIW method LDAPObject.cancel_s() returns a result now
* Fixed ldap.schema.models.NameForm: Class attribute oc is now
  of type string, not tuple to be compliant with RFC 4512
----------------------------------------------------------------
Released 2.3.4 2008-03-29

Changes since 2.3.3:

Modules/
* Fixed seg fault when calling LDAPObject.get_option()
  (see SF#1926507, thanks to Matej)

----------------------------------------------------------------
Released 2.3.3 2008-03-26

Changes since 2.3.2:

Fixed backward-compability when building with OpenLDAP 2.3.x libs.

----------------------------------------------------------------
Released 2.3.2 2008-03-26

Changes since 2.3.1:

Lib/
* ldap.dn.escape_dn_chars() now really adheres to
  RFC 4514 section 2.4 by escaping null characters and a
  space occurring at the beginning of the string
* New method ldap.cidict.cidict.__contains__()
* ldap.dn.explode_dn() and ldap.dn.explode_rdn()
  have a new optional key-word argument flags which is
  passed to ldap.dn.str2dn().

Modules/
* Removed unused OPT_PRIVATE_EXTENSION_BASE from constants.c

Doc/
* Various additions, updates, polishing (thanks to James).
2009-05-27 05:38:52 +00:00
adam
9db49deec4 Changes 2.3.0:
* Support for setuptools (building .egg, thanks to Torsten)
* Support for matched values control
* Fixed ldif
* ldap.schema.models: SUP now separated by $
* Added constant MOD_INCREMENT to support
  modify+increment extension

Changes 2.2.1:
* OpenLDAP 2.3+ required now to build.
* Added support for Cancel operation ext. op. if supported
  in OpenLDAP API of the libs used for the build.
* Removed deprecated code for setting options by name
* Added l_ldap_cancel()
2007-12-16 15:34:14 +00:00
wiz
abe3bebc8b Update to 2.2.0, provided by Yoshito Komatsu in PR 33478:
----------------------------------------------------------------
Released 2.2.0 2006-04-10

Changes since 2.0.11:

* OpenLDAP 2.2+ required now to build.

Modules/
* Dropped all occurences of '#ifdef #LDAP_VENDOR_VERSION'.
* Fixed wrong tuple size in l_ldap_result3() (see SF#1368108)
* Fixed get_option(ldap.OPT_API_INFO) (see SF#1440165)
* Fixed memory leak in l_ldap_result3() when all=0
  (see SF#1457325)
* Fixed memory leak in l_ldap_result3() in error cases
  (see SF#1464085)

Lib/
* Fixed ldap.schema.models.DITStructureRule.__str__() to
  separate SUP rule-ids with a single space instead of ' $ '
* Fixed ldap.async.Dict
* Added ldap.async.IndexedDict
* ldap.schema.subentry.SubSchema.attribute_types() has new
  key-word argument ignore_dit_content_rule
----------------------------------------------------------------
Released 2.0.11 2005-11-07

Changes since 2.0.10:

Lib/
* Class ldap.ldapobject.LDAPObject:
  Each method returns a result now
* Class ldap.ldapobject.ReconnectLDAPObject:
  Some methods called the wrong methods of LDAPObject. Fixed.
* Added new class ldap.async.Dict
* Slightly cleaned up ldap.schema.subentry.attribute_types()
* New sub-module ldap.resiter which simply provides a mix-in
  class for ldap.ldapobject.LDAPObject with a generator method
  allresults().
  Obviously this only works with Python 2.3+. And
  it's still experimental.
2006-05-14 21:09:20 +00:00
drochner
fb6502b2aa update to 2.0.10
changes:
* Switched back to old implementation of
  ldap.schema.tokenizer.split_tokens() since the new one
  had a bug which deletes the spaces from DESC
* ldap.INSUFFICIENT_ACCESS is now ignored in
  ldap.ldapobject.LDAPObject.search_subschemasubentry_s()
2005-10-25 17:09:33 +00:00
cube
283d3580be Update to version 2.0.0pre15, provided by David Ferlier in PR 24138 and
slightly reworked by myself.  David will now maintain it.

The 2.x series support OpenLDAP 2.x.  From then an incomplete list of
changes is available in the CHANGES file of the distfile.
2004-01-20 05:16:58 +00:00
cjep
b277a020e1 Attempt to make this work with python 2.2. Also use buildlink2 for
openldap1.
2003-01-04 18:16:22 +00:00