summaryrefslogtreecommitdiff
path: root/databases/py-ldap
AgeCommit message (Collapse)AuthorFilesLines
2022-10-18py-ldap: updated to 3.4.3adam3-10/+7
Released 3.4.3 2022-09-15 This is a minor release to bring back the removed OPT_X_TLS option. Please note, it's still a deprecated option and it will be removed in 3.5.0. The following deprecated option has been brought back: - ``OPT_X_TLS`` Fixes: * Sphinx documentation is now successfully built * pypy3 tests stability was improved * setup.py deprecation warning is now resolved
2022-09-05py-ldap: updated to 3.4.2adam3-7/+10
Released 3.4.2 2022-07-06 This is a minor release to provide out-of-the-box compatibility with the merge of libldap and libldap_r that happened with OpenLDAP's 2.5 release. The following undocumented functions are deprecated and scheduled for removal: - ``ldap.cidict.strlist_intersection`` - ``ldap.cidict.strlist_minus`` - ``ldap.cidict.strlist_union`` The following deprecated option has been removed: - ``OPT_X_TLS`` Doc/ * SASL option usage has been clarified Lib/ * ppolicy control definition has been updated to match Behera draft 11 Modules/ * By default, compile against libldap, checking whether it provides a threadsafe implementation at runtime * When decoding controls, the module can now distinguish between no value (now exposed as ``None``) and an empty value (exposed as ``b''``) * Several new OpenLDAP options are now supported: * ``OPT_SOCKET_BIND_ADDRESSES`` * ``OPT_TCP_USER_TIMEOUT`` * ``OPT_X_SASL_MAXBUFSIZE`` * ``OPT_X_SASL_SECPROPS`` * ``OPT_X_TLS_ECNAME`` * ``OPT_X_TLS_PEERCERT`` * ``OPT_X_TLS_PROTOCOL``-related options and constants Fixes: * Encoding/decoding of boolean controls has been corrected * ldap.schema.models.Entry is now usable * ``method`` keyword to ReconnectLDAPObject.bind_s is now usable
2022-05-24py-ldap: use OPSYS_VERSIONnia1-3/+2
2022-05-10py-ldap: updated to 3.4.0adam3-7/+24
Released 3.4.0 2021-11-26 This release requires Python 3.6 or above, and is tested with Python 3.6 to 3.10. Python 2 is no longer supported. New code in the python-ldap project is available under the MIT licence (available in ``LICENCE.MIT`` in the source). Several contributors have agreed to apply this licence their previous contributions as well. See the ``README`` for details. The following undocumented functions are deprecated and scheduled for removal: - ``ldap.cidict.strlist_intersection`` - ``ldap.cidict.strlist_minus`` - ``ldap.cidict.strlist_union`` Security fixes: * Fix inefficient regular expression which allows denial-of-service attacks when parsing specially-crafted LDAP schema. (GHSL-2021-117) Changes: * On MacOS, remove option to make LDAP connections from a file descriptor when built with the system libldap (which lacks the underlying function, ``ldap_init_fd``) * Attribute values of the post read control are now ``bytes`` instead of ISO8859-1 decoded ``str`` * ``LDAPUrl`` now treats urlscheme as case-insensitive * Several OpenLDAP options are now supported: * ``OPT_X_TLS_REQUIRE_SAN`` * ``OPT_X_SASL_SSF_EXTERNAL`` * ``OPT_X_TLS_PEERCERT`` Fixes: * The ``copy()`` method of ``cidict`` was added back. It was unintentionally removed in 3.3.0 * Fixed getting/setting ``SASL`` options on big endian platforms * Unknown LDAP result code are now converted to ``LDAPexception``, rather than raising a ``SystemError``. slapdtest: * Show stderr of slapd -Ttest * ``SlapdObject`` uses directory-based configuration of ``slapd`` * ``SlapdObject`` startup is now faster Infrastructure: * CI now runs on GitHub Actions rather than Travis CI.
2022-01-04*: bump PKGREVISION for egg.mk userswiz1-1/+2
They now have a tool dependency on py-setuptools instead of a DEPENDS
2021-10-26databases: Replace RMD160 checksums with BLAKE2s checksumsnia1-2/+2
All checksums have been double-checked against existing RMD160 and SHA512 hashes The following distfiles could not be fetched (some may be only fetched conditionally): ./databases/cstore/distinfo D6.data.ros.gz ./databases/cstore/distinfo cstore0.2.tar.gz ./databases/cstore/distinfo data4.tar.gz
2021-10-07databases: Remove SHA1 distfile hashesnia1-2/+1
2021-01-14py-ldap: Force pkgsrc version on NetBSD where version detection failsnia1-1/+9
PR pkg/55902
2021-01-13py-ldap: Require a version of openldap-client that has openldap.hnia1-1/+2
Might help with PR pkg/55902.
2020-07-07py-ldap: updated to 3.3.1adam2-7/+7
Changes 3.3.1: * On MacOS, remove option to make LDAP connections from a file descriptor when built wit the system libldap (which lacks the underlying function, ``ldap_init_fd``)
2020-06-18py-ldap: updated to 3.3.0adam3-9/+11
Release 3.3.0: Highlights: * ``LDAPError`` now contains additional fields, such as ctrls, result, msgid * ``passwd_s`` can now extract the newly generated password * LDAP connections can now be made from a file descriptor This release is tested on Python 3.8, and the beta of Python 3.9. The following undocumented functions are deprecated and scheduled for removal: - ``ldap.cidict.strlist_intersection`` - ``ldap.cidict.strlist_minus`` - ``ldap.cidict.strlist_union`` Modules/ * Ensure ReconnectLDAPObject is not left in an inconsistent state after a reconnection timeout * Syncrepl now correctly parses SyncInfoMessage when the message is a syncIdSet * Release GIL around global get/set option call * Do not leak serverctrls in result functions * Don't overallocate memory in attrs_from_List() * Fix thread support check for Python 3 * With OpenLDAP 2.4.48, use the new header openldap.h Lib/ * Fix some edge cases regarding quoting in the schema tokenizer * Fix escaping a single space in ldap.escape_dn_chars * Fix string formatting in ldap.compare_ext_s * Prefer iterating dict instead of calling dict.keys() Doc/ * Clarify the relationship between initialize() and LDAPObject() * Improve documentation of TLS options * Update FAQ to include Samba AD-DC error message "Operation unavailable without authentication" * Fix several incorrect examples and demos (but note that these are not yet tested) * Update Debian installation instructions for Debian Buster * Typo fixes in docs and docstrings Test/ * Test and document error cases in ldap.compare_s * Test if reconnection is done after connection loss * Make test certificates valid for the far future * Use slapd -Tt instead of slaptest Infrastructure: * Mark the LICENCE file as a license for setuptools * Use "unittest discover" rather than "setup.py test" to run tests
2020-03-27py-ldap: add build fixesgutteridge3-3/+20
This package requires cyrus-sasl to build. Separately, it had a test(1) invocation that's non-portable.
2020-01-18*: Recursive revision bump for openssl 1.1.1.jperkin1-1/+2
2019-04-09py-ldap: updated to 3.2.0adam2-7/+11
Release 3.2.0: Lib/ * Add support for X-ORIGIN in ldap.schema's ObjectClass * Make initialize() pass extra keyword arguments to LDAPObject * ldap.controls.sss: use str instead of basestring on Python 3 * Provide ldap._trace_* atributes in non-debug mode Doc/ * Fix ReST syntax for links to set_option and get_option Tests/ * Use intersphinx to link to Python documentation * Correct type of some attribute values to bytes * Use system-specific ENOTCONN value Infrastructure: * Add testing and document support for Python 3.7 * Add Python 3.8-dev to Tox and CI configuration * Add Doc/requirements.txt for building on Read the Docs
2018-10-23py-ldap: updated to 3.1.0adam5-69/+42
Released 3.1.0: This release brings two minor API changes: - Long-deprecated functions ldap.open() and ldap.init() are removed - LDAPObject.compare_s() and compare_ext_s return bool instead of 0 or 1 All changes since 3.0.0: Lib/ * Remove long deprecated functions ldap.open() and ldap.init() * LDAPObject.compare_s() and LDAPObject.compare_ext_s() now return a bool instead of 1 or 0. * Make iteration over cidict yield same values as keys() * Fail if pyasn1 is not installed * Fix parsing of PPolicyControl ASN.1 structure * Use items() when appropriate in dict iteration * Add support for tracing LDAP calls. Tracing can now be enabled with the env var PYTHON_LDAP_TRACE_LEVEL and redirected to a file with PYTHON_LDAP_TRACE_FILE. (This is mainly intended for debugging and internal testing; the configuration or output may change in future versions.) Modules/ * Fix ref counting bug in LDAPmessage_to_python Doc/ * Remove warning about unreleased version * Doc: Replace Mac OS X -> macOS Tests/ * Add tests and coverage for tracing * Disable warnings-as-errors for Python 3.4 * Fix assertTrue to assertEqual * Mark several test values as bytes Lib/slapdtest/ * Fix error message for missing commands * Make SlapdObject a context manager * Disable SASL external when missing SASL support * Make SlapdObject.root_dn a property * In SlapdObject, build include directives dynamically * Move import statements to top level Code style: * Add Makefile rules for automatic formatting of C and Python code * Reformat and indent all C files * Trim white space throughout the project Infrastructure: * Add py3-trace tox environment to Travis CI config * Add new Pytest cache directory to gitignore General: * Update all pypi.python.org URLs to pypi.org Released 3.0.0: Notable changes since 2.4.45 (please see detailed logs below): * Python 3 support and bytes_mode see: https://python-ldap.readthedocs.io/en/latest/bytes_mode.html * The module ldap.async is renamed to ldap.asyncsearch * New dependencies: pyasn1, pyasn1_modules * Dropped support for Python 2.6 and 3.3
2017-11-27py-ldap: updated to 2.5.2adam3-11/+20
Release 2.5.2: * code-cleaning in setup.py Modules/ * PyBytes_ instead of PyString_ and added PyInt_FromLong compat macro * moved code from version.c to ldapmodule.c * removed obsolete back-ward compability constants from common.h * build checks whether LDAP_API_VERSION is OpenLDAP 2.4.x * _ldap.__author__ and _ldap.__license__ also set from ldap.pkginfo * assume C extension API for Python 2.7+ Lib/ * removed all dependencies on modules string and types * removed use of .has_key() * removed class ldap.ldapobject.NonblockingLDAPObject * new global constant ldap.LIBLDAP_API_INFO * right after importing _ldap there is a call into libldap to initialize it * method .decodeControlValue() of SSSResponseControl and VLVResponseControl does not set class attribute result_code anymore * always use bytes() for UUID() constructor in ldap.syncrepl * module ldif now uses functions b64encode() and b64decode() * fixed pickling and restoring of ReconnectLDAPObject * more modules with PEP-8 compliance * ldap.ldapobject split into module-package Tests/ * scripts do not directly call SlapdTestCase.setUpClass() anymore * added LDIF test with folded, base64-encoded attribute * added more tests for sub-module ldap.dn * added tests for ldap.syncrepl
2017-11-15py-ldap: updated to 2.5.1adam3-12/+12
Changes since 2.4.45: Mandatory prerequisites: - Python 2.7.x - pyasn1 0.3.7+ and pyasn1_modules 0.1.5+ Modules/ * removed unused code schema.c Lib/ * ldap.__version__, ldap.__author__ and ldap.__license__ now imported from new sub-module ldap.pkginfo also to setup.py * Added safety assertion when importing _ldap: ldap.pkginfo.__version__ must match _ldap.__version__ * removed stand-alone module dsml * slapdtest.SlapdObject.restart() just restarts slapd without cleaning any data * Compability changes for pyasn1 0.3.x or newer (thanks to Ilya Etingof and Christian Heimes) * The methods SSSResponseControl.decodeControlValue() and VLVResponseControl.decodeControlValue() now follow the coding convention to use camel-cased ASN.1 name as class attribute name. The old class names are still set for back-ward compability but should not be used in new code because they might be removed in a later release. * removed SSSRequestControl from ldap.controls.KNOWN_RESPONSE_CONTROLS Tests/ * added explicit reconnect tests for ReconnectLDAPObject
2017-10-24py-ldap: update to 2.4.45adam3-22/+7
Changes 2.4.45: Lib/ * Fixed reraising of wrong exception in SimpleLDAPObject._ldap_call() Tests/ * removed work-around in t_cext.py
2017-09-08Released 2.4.44:adam2-7/+7
Modules/ * more fine-grained GIL releasing in function l_ldap_result4()
2017-09-072.4.43:adam2-8/+8
Lib/ * fixed passing all arguments from LDAPObject.sasl_non_interactive_bind_s() to LDAPObject.sasl_interactive_bind_s() Tests/ * added test for LDAPObject.sasl_external_bind_s() Doc/ * added docs for SASL bind methods * more references * better sorting of LDAPObject methods 2.4.42: Lib/ * added new SlapdObject methods _ln_schema_files() and _create_sub_dirs() * SlapdObject methods setup_rundir() and gen_config() are now "public" methods * removed pseudo test script from module ldap.cidict Tests/ * added sub-module for testing class ldap.cidict.cidict * avoid deprecated method alias unittest.TestCase.assertEquals
2017-09-04Follow some redirects.wiz1-2/+2
2017-07-132.4.41:adam2-8/+8
Lib/ * Added support for increment: lines in LDIF changes records
2017-07-03Changes 2.4.40:adam2-7/+7
Modules/ * fixed memory leaks when using extended controls
2017-06-01Changes 2.4.39:adam2-7/+7
Lib/ * fixed errno-related ldap.TIMEOUT regression Lib/slapdtest.py * Removed obsolete assert statements
2017-05-09PLIST also should have been updatedadam1-1/+4
2017-05-05Changes 2.4.38:adam2-13/+11
Lib/slapdtest.py * SlapdObject now evaluates env var SLAPD for optionally pointing to OpenLDAP's slapd executable (e.g. with OpenLDAP LTB builds) * added LDAPI support in slaptest.SlapdObject which is internally used in methods ldapadd() and ldapwhoami() * added method slaptest.SlapdObject.ldapmodify() * fixed enabling logger in slaptest * directory name now contains port to be able to run several SlapdObject instances side-by-side (e.g. with replication) * added authz-regexp mapping to rootdn for user running the test * internally use SASL/EXTERNAL via LDAPI to bind * SlapdObject.server_id used as serverID in slapd.conf for MMR * Removed method SlapdObject.started() because SlapdTestCase.setUpClass() will be used to add initial entries Tests/ * ReconnectLDAPObject is also tested by sub-classing test class
2017-02-18Released 2.4.32:adam2-7/+7
Running tests made easier: - python setup.py test - added tox.ini
2017-01-01Add python-3.6 to incompatible versions.wiz1-2/+2
2016-09-13Changes 2.4.27:adam3-9/+11
Lib/ * added 'strf_secs' and 'strp_secs' to ldap.functions.__all__ * fixed regression introduced with 2.4.26: ldif.LDIFParser did not fully parse LDIF records without trailing empty separator line
2016-07-09Remove python33: adapt all packages that refer to it.wiz1-2/+2
2016-06-08Switch to MASTER_SITES_PYPI.wiz1-2/+2
2016-03-05Bump PKGREVISION for security/openssl ABI bump.jperkin1-1/+2
2016-01-18Changes 2.4.25:adam2-7/+7
* Fix for attrlist=None regression introduced in 2.4.23 by ref count patch
2015-12-27Changes 2.4.22:adam3-8/+11
Lib/ * LDIFParser now also accepts value-spec without a space after the colon. * Added key-word argument authz_id to LDAPObject methods sasl_non_interactive_bind_s(), sasl_external_bind_s() and sasl_gssapi_bind_s() * Hmmpf! Added missing self to LDAPObject.fileno(). * ReconnectLDAPObject.sasl_bind_s() now correctly uses generic wrapper arguments *args,**kwargs * LDIFParser.parse_change_records() now correctly calls LDIFParser.handle_change_modify() * Corrected ldap.controls.pwdpolicy.__all__ Doc/ * Started missing docs for sub-module ldap.sasl.
2015-12-05Extend PYTHON_VERSIONS_INCOMPATIBLE to 35adam1-2/+2
2015-11-03Add SHA512 digests for distfiles for databases categoryagc1-1/+2
Problems found with existing distfiles: distfiles/D6.data.ros.gz distfiles/cstore0.2.tar.gz distfiles/data4.tar.gz distfiles/sphinx-2.2.7-release.tar.gz No changes made to the cstore or mariadb55-client distinfo files. Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
2015-08-31Changes 2.4.20:adam3-11/+11
* 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-01-12Changes 2.4.19:adam4-54/+12
* 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
2014-12-31Improve EGG_NAME default to work for packages with '-' in their name.wiz1-3/+1
Remove now unnecessary overrides in various packages.
2014-10-12Update to 2.4.18:wiz2-6/+6
Released 2.4.18 2014-10-09 Changes since 2.4.17: Lib/ * Fixed raising exception in LDAPObject.read_s() when reading an entry returns empty search result
2014-10-01Update to 2.4.17:wiz2-6/+7
Released 2.4.17 2014-09-27 Changes since 2.4.16: Lib/ * New hook syncrepl_refreshdone() in ldap.syncrepl.SyncReplConsumer (thanks to Petr Spacek and Chris Mikkelson) Modules/ * Added support for getting file descriptor of connection with ldap.OPT_DESC
2014-09-14Update to 2.4.16:wiz4-24/+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-05-09Mark packages that are not ready for python-3.3 also not ready for 3.4,wiz1-2/+2
until proven otherwise.
2014-04-01Update to 2.4.15.wiz4-16/+33
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-03-03Changes 2.4.14:adam4-12/+12
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-02-12Recursive PKGREVISION bump for OpenSSL API version bump.tron1-1/+2
2014-01-25Mark packages as not ready for python-3.x where applicable;wiz1-1/+2
either because they themselves are not ready or because a dependency isn't. This is annotated by PYTHON_VERSIONS_INCOMPATIBLE= 33 # not yet ported as of x.y.z or PYTHON_VERSIONS_INCOMPATIBLE= 33 # py-foo, py-bar respectively, please use the same style for other packages, and check during updates. Use versioned_dependencies.mk where applicable. Use REPLACE_PYTHON instead of handcoded alternatives, where applicable. Reorder Makefile sections into standard order, where applicable. Remove PYTHON_VERSIONS_INCLUDE_3X lines since that will be default with the next commit. Whitespace cleanups and other nits corrected, where necessary.
2013-08-20Changes 2.4.13:adam2-7/+6
Lib/ * ldapobject.ReconnectLDAPObject._apply_last_bind() now sends anonymous simple bind request even if the calling application did not to provoke ldap.SERVER_DOWN in method reconnect() * ldapobject.ReconnectLDAPObject.reconnect() now also catches ldap.TIMEOUT exception after reconnection attempt * Several other fixes for ldapobject.ReconnectLDAPObject
2013-02-06PKGREVISION bumps for the security/openssl 1.0.1d update.jperkin1-2/+2
2012-12-16recursive bump from cyrus-sasl libsasl2 shlib major bump.obache1-1/+2