summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelie <elie>2011-03-24 17:21:18 +0000
committerelie <elie>2011-03-24 17:21:18 +0000
commit94ef568863cc7c341ab5dc4e93ff51ff999c82dc (patch)
treec893420586d8f410477d961945c1d0d14a1c9c24
parent060f39f9ead5b0c4af4dd3c7af1368cd507d71db (diff)
downloadpysnmp-94ef568863cc7c341ab5dc4e93ff51ff999c82dc.tar.gz
fix to MIB operation failure handling at CommandResponderBase.processPdu
-rw-r--r--pysnmp/entity/rfc3413/cmdrsp.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/pysnmp/entity/rfc3413/cmdrsp.py b/pysnmp/entity/rfc3413/cmdrsp.py
index a820d07..333f879 100644
--- a/pysnmp/entity/rfc3413/cmdrsp.py
+++ b/pysnmp/entity/rfc3413/cmdrsp.py
@@ -110,7 +110,7 @@ class CommandResponderBase:
rspPDU = v2c.apiPDU.getResponse(PDU)
statusInformation = {}
-
+
self.__pendingReqs[stateReference] = (
messageProcessingModel,
securityModel,
@@ -175,7 +175,9 @@ class CommandResponderBase:
except pysnmp.smi.error.SmiError, errorIndication:
errorStatus, errorIndex = 'genErr', len(varBinds) and 1 or 0
except pysnmp.error.PySnmpError, errorIndication:
- errorStatus, errorIndex = 'genErr', len(varBinds) and 1 or 0
+ if stateReference in self.__pendingReqs:
+ del self.__pendingReqs[stateReference]
+ return
else:
return