Ldap3-bleeding-edge

Latest version: v2.10.1.1337

Safety actively analyzes 714815 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 19

2.6.1

- tested against pyasn1 0.4.7
- added eDirectory 9.1.4 (EDIR_9_1_4) to offline schemas
- added json converter for timedelta (thanks dirkjanm)
- strip parameter defaults to False in utils.dn.parse_dn()
- escaped space is allowed as trailing character in attribute_value in utils.dn.parse_dn() (thanks phi1010)
- connection.extend.standard.paged_search doesn't raise exceptions when raise_exceptions is False
- the Search operation returns the entries fetched by the server when size or time limits are reached even if raise_exceptions is set to True
- Handle the minimum value that can be stored in an Int64 in format_ad_timedelta (thanks mprahl)
- EntryState: `entry_raw_attributes` is populated instead of `raw_attributes` (thanks Christian)
- Removed restriction to perform rename and move simultaneously in modify_dn (thanks Fabian)
- fixed checking for hexdigits in parse_dn (thanks Michael)
- fixed escaping when multiple backslashes are present in parse_dn (thanks Phillip)
- fixed multiple NoneType exceptions in entry_to_json() (thanks David and cfelder)
- allowing Microsoft specific syntax (<WKGUID=xxx>) for WellKnownObjects in DN (thanks David)
- connection.extend.standard.paged_search() now follows referrals when auto_referrals=True (thanks kprativa)
- fixed a bug in decoding replica list in connection.extend.novell.list_replicas()
- fixed a bug when adding duplicate alias in CaseInsensitiveWithAliasDict()
- added ignore_duplicates=False in set_aliases in CaseInsensitiveWithAliasDict() to ignore a duplicate alias (either in aliases or in keys)
- Schema info now uses CaseInsensitiveWithAlias dict as default so object and attributes can also be referentiated with OID (thanks ahoffm11)
- added block mode and timeout parameters to next() method of persistent_search
- when using the pyasn1 decoder raw_dn is not returned as a pyasn1 object anymore but as bytes
- Return offset timezone aware datetime for max AD timestamp (thanks Jussi)

2.6

- fixed empty digestMd5.py file in 2.5.2 package
- explicitly declare digest module md5 in util.ntlm (thanks adawalli)
- change object passed to modify() was unexpectedly mutated (thanks John)
- added LDAPInfoError exception
- added Server.has_control(control) method to check if a server has a specific control
- added Server.has_extension(extension) method to check if a server has a specific extension
- added Server.has_feature(feature) method to check if a server has a specific feature
- fixed checking of \\ in safe_dn (thanks Maxim)
- fixed uuid checking with 5c byte value
- added single=True parameter to the ServerPool object definition. Servers state is shared between connections using the same pool
- updated copyright notice

2.5.2

- when starting tls before binding the connection is automatically open
- fixed changelog date (thanks Adam)
- support for AD timedeltas (thanks mprahl)
- fixed WhoAmI in mock strategies (thanks mprahl)
- prevent unnecessary exception in extend/standard/ModifyPassword (thanks Johnny)
- added support for external gssapi credentials to be passed to the sasl connection (thanks Firstyear)
- added support for gssapi store in sasl connection (thanks clhendrick)
- fixed LdifProducer (thanks antoinell)
- fixed NTLM bind (thanks ribx)
- server state in ServerPool is now a namedtuple "ServerState" (thanks Krisztian)
- fixed error when adding member to AD group with unsafe DN (thanks Maxim)
- properly restore lazy status in reusable strategy (thanks Krisztian)
- ServerState namedtuple converted to class in core/pooling (thanks Krisztian)
- empty schema doesn't raise exception in Abstraction Layer (thanks ghost)

2.5.1

- connection.result is populated when exception raised with raise_exceptions=True
- fixed objectSid in mocking strategies
- fixed circular reference in exception history
- added objectSid validator
- byte values are properly searched in MOCK strategies (thanks dyj216)
- exception history refactored (thanks Tamas)
- connections in context manager don't bind anymore when auto_bind is set to AUTO_BIND_NONE (Thanks Tim)
- Cython compatible build (thanks Pedro)
- more detailed exception message in Mock strategy (thanks Janne)
- exceptions flow refactored in reusable strategy (thanks kxt)
- pwdlastset accept any positive integer (thanks abenbecker)
- fixed an exception while logging packet with pyasn1 decoder
- fixed importing abc from collections for Python 3.8

2.5

- abstract layer now handles auxiliary classes
- pwdLastSet in AD is valid for 0 and -1 (thanks Taylor)
- fixed extend.novell.get_universal_password (thanks Fernando)
- entryUUID is properly validated in search filters (thanks FriedrichI)
- custom attribute formatters are properly applied when parsing the search filter
- REUSABLE strategy now honours credentials when changed in the original connection (thanks Prof Hase)
- add operation doesn't change passed attribute dict anymore (thanks Daniele)
- missing entry's attribute return False when searching instead of raising an exception (thanks Maxsond)
- fixed ad_timestamp evaluation for integers (thanks Flynn)
- wrong exception raised when user name is empty in simple binding (thanks Ivan)
- exception is raised if size limit is exceed when searching in mocking strategies with raise_exceptions=True (thanks David)
- fixed validator for novell guid
- fixed validator for openldap EntryUUID
- fixed validator for AD objectGUID, now follows MS-DTYP
- fixed formatter for AD objectGUID
- fixed exception when adding binary values (thanks guidow)
- added escape_rdn_chars() to ldap3.utils.dn for safe checking untrusted input while building DNs (thanks Alex)
- fixed search for binary values in mock strategies
- fixed exception with unicode chars in subfilters for python 2 (thanks Friedrich)
- connection.extend.paged_search() doesn't miss the last entries anymore when size limit is exceeded on the server (thanks Friedrich)
- validators are not applied when loading data from json dump in Mock strategies (thanks Derek)
- additional validator to check for erroneous bytes to string conversion in Python 3 (thanks Brian)
- additional formatter and validator to check for generalizedTime with 0 year (thanks Brian)
- added ADDITIONAL_CLIENT_ENCODINGS parameter
- fixed AD dir_sync extended operation (thanks Lucas)
- ad_unlock_account works properly (thanks Francowxu)
- added Microsoft security descriptor control (thanks Dirk-jan)
- fixed search in mock strategies when raise_exceptions=True (thanks Derek)
- formatters never raise exceptions but return the raw_value when unable to format
- fixed controls duplication in paged search (thanks Dirk-jan)

2.4.1

- tested against pyasn1 from version 0.1.8 up to version 0.4.2, Python 2.6.6, Python 2.7.14, Python 3.6.4
- auto_encode parameter is honored when binding (thanks jkolo)
- fixed organizationalName definition in oid (thanks mingulov)
- automatic byte to int conversion working again (thanks Brian)
- mock connection searchs correctly escape filters (thanks kiddick)
- fixed bind with not unicode characters in Python 2 (thanks jkolo)
- extended filter attributes should work again with pyasn1 0.4.1 (thanks Dirk-jan)
- fixed error when reading incomplete server info
- NOT keyword properly handled in dit_content_rules (thanks Michael)
- operational attributes are prorerly returned in Cursor whit get_operational_attributes = True (thanks a23s4a)
- start_tls() is properly executed with AD when raise_exceptions=True (thanks Andrew)
- reopening a Connection honours auto_bind setting (thanks calken)
- an attribute returned with no value from a flaky server doesn't raise exception anymore (thanks Terrence)
- pwdLastSet in AD is valid only for -1 (thanks Thane)
- fixed docs for ldifProducer (thanks lhoekenga)
- fixed monkeypatching of pyasn1 for Boolean Value in BER encoding (thanks tmarlok88)
- check_names was not honoured while validating attribute values (thanks ymcymc)
- locks refactored in Connection and in Async strategy
- socket properly closed when checking availability of an invalid server

Page 2 of 19

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.