summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlya Etingof <etingof@gmail.com>2017-02-12 09:57:01 +0100
committerIlya Etingof <etingof@gmail.com>2017-02-12 09:57:01 +0100
commit3d26f4e8fd6c799f3c537f31f4a6a75b7e78c1e4 (patch)
tree33d8bd1b112f0d9317e260a12465e4b791797411
parentd9bf18b39adfeff311666f4fd89052b4e6b38fd2 (diff)
downloadpysnmp-git-3d26f4e8fd6c799f3c537f31f4a6a75b7e78c1e4.tar.gz
fix to invalid-msg-counter increment
-rw-r--r--CHANGES.txt1
-rw-r--r--pysnmp/proto/mpmod/rfc3412.py12
2 files changed, 5 insertions, 8 deletions
diff --git a/CHANGES.txt b/CHANGES.txt
index d9a2ae3a..bdd1bfa0 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -4,6 +4,7 @@ Revision 4.3.4, released 2017-02-XX
- Fix to low-level SNMP API example to accommodate changed pyasn1
SEQUENCE supporting iterator protocol.
+- Fixed crash on SNMP engine's invalid message counter increment.
Revision 4.3.3, released 2017-02-04
-----------------------------------
diff --git a/pysnmp/proto/mpmod/rfc3412.py b/pysnmp/proto/mpmod/rfc3412.py
index c9b6286a..7a53b4b1 100644
--- a/pysnmp/proto/mpmod/rfc3412.py
+++ b/pysnmp/proto/mpmod/rfc3412.py
@@ -280,8 +280,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
contextEngineId, contextName, pduVersion,
pdu, maxSizeResponseScopedPDU, stateReference,
statusInformation):
- snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB',
- 'snmpEngineID')
+ snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', 'snmpEngineID')
snmpEngineID = snmpEngineID.syntax
# 7.1.2.b
@@ -474,8 +473,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
except PyAsn1Error:
debug.logger & debug.flagMP and debug.logger('prepareDataElements: %s' % (sys.exc_info()[1],))
- snmpInASNParseErrs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMPv2-MIB',
- 'snmpInASNParseErrs')
+ snmpInASNParseErrs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMPv2-MIB', 'snmpInASNParseErrs')
snmpInASNParseErrs.syntax += 1
raise error.StatusInformation(errorIndication=errind.parseError)
@@ -512,8 +510,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
elif (msgFlags & 0x03) == 0x03:
securityLevel = 3
else:
- snmpInvalidMsgs = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-MPD-MIB',
- 'snmpInvalidMsgs')
+ snmpInvalidMsgs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-MPD-MIB', 'snmpInvalidMsgs')
snmpInvalidMsgs.syntax += 1
raise error.StatusInformation(errorIndication=errind.invalidMsg)
@@ -616,8 +613,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
'prepareDataElements: cache securityEngineId %r for %r %r' % (
securityEngineId, transportDomain, transportAddress))
- snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB',
- 'snmpEngineID')
+ snmpEngineID, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMP-FRAMEWORK-MIB', 'snmpEngineID')
snmpEngineID = snmpEngineID.syntax
# 7.2.7 XXX PDU would be parsed here?