From 5d85c44b836313b4b6969e47e5dbf903e09cfa79 Mon Sep 17 00:00:00 2001 From: stroeder Date: Sat, 24 Oct 2015 16:21:14 +0000 Subject: [PATCH] Explicitly list limit exception types --- Demo/pyasn1/noopsearch.py | 8 +++++--- Lib/ldap/controls/openldap.py | 9 +++++++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/Demo/pyasn1/noopsearch.py b/Demo/pyasn1/noopsearch.py index a22f394..e2846ce 100644 --- a/Demo/pyasn1/noopsearch.py +++ b/Demo/pyasn1/noopsearch.py @@ -14,8 +14,6 @@ import sys,ldap,ldapurl,getpass from ldap.controls.openldap import SearchNoOpControl -LDAPLimitErrors = (ldap.TIMEOUT,ldap.TIMELIMIT_EXCEEDED,ldap.SIZELIMIT_EXCEEDED,ldap.ADMINLIMIT_EXCEEDED) - SEARCH_TIMEOUT=30.0 try: @@ -56,7 +54,11 @@ try: serverctrls=[SearchNoOpControl(criticality=True)], ) _,_,_,search_response_ctrls = ldap_conn.result3(msg_id,all=1,timeout=SEARCH_TIMEOUT) -except LDAPLimitErrors,e: +except ( + ldap.TIMEOUT, + ldap.TIMELIMIT_EXCEEDED, + ldap.SIZELIMIT_EXCEEDED, + ldap.ADMINLIMIT_EXCEEDED),e: ldap_conn.abandon(msg_id) sys.exit(1) diff --git a/Lib/ldap/controls/openldap.py b/Lib/ldap/controls/openldap.py index 53425e0..8480e7c 100644 --- a/Lib/ldap/controls/openldap.py +++ b/Lib/ldap/controls/openldap.py @@ -4,7 +4,7 @@ ldap.controls.openldap - classes for OpenLDAP-specific controls See http://www.python-ldap.org/ for project details. -$Id: openldap.py,v 1.4 2015/09/18 17:24:39 stroeder Exp $ +$Id: openldap.py,v 1.5 2015/10/24 16:21:14 stroeder Exp $ """ import ldap.controls @@ -63,7 +63,12 @@ class SearchNoOpMixIn: serverctrls=[SearchNoOpControl(criticality=True)], ) _,_,_,search_response_ctrls = self.result3(msg_id,all=1,timeout=timeout) - except LDAPLimitErrors,e: + except ( + ldap.TIMEOUT, + ldap.TIMELIMIT_EXCEEDED, + ldap.SIZELIMIT_EXCEEDED, + ldap.ADMINLIMIT_EXCEEDED + ),e: self.abandon(msg_id) raise e else: