42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
"""
|
|
ldap.resiter - processing LDAP results with iterators
|
|
|
|
See https://www.python-ldap.org/ for details.
|
|
"""
|
|
|
|
from ldap.pkginfo import __version__, __author__, __license__
|
|
|
|
|
|
class ResultProcessor:
|
|
"""
|
|
Mix-in class used with ldap.ldapopbject.LDAPObject or derived classes.
|
|
"""
|
|
|
|
def allresults(self, msgid, timeout=-1, add_ctrls=0):
|
|
"""
|
|
Generator function which returns an iterator for processing all LDAP operation
|
|
results of the given msgid like retrieved with LDAPObject.result3() -> 4-tuple
|
|
"""
|
|
result_type, result_list, result_msgid, result_serverctrls, _, _ = \
|
|
self.result4(
|
|
msgid,
|
|
0,
|
|
timeout,
|
|
add_ctrls=add_ctrls
|
|
)
|
|
while result_type and result_list:
|
|
yield (
|
|
result_type,
|
|
result_list,
|
|
result_msgid,
|
|
result_serverctrls
|
|
)
|
|
result_type, result_list, result_msgid, result_serverctrls, _, _ = \
|
|
self.result4(
|
|
msgid,
|
|
0,
|
|
timeout,
|
|
add_ctrls=add_ctrls
|
|
)
|
|
return # allresults()
|