summaryrefslogtreecommitdiff
path: root/pysnmp/proto
diff options
context:
space:
mode:
authorelie <elie>2012-04-17 20:07:38 +0000
committerelie <elie>2012-04-17 20:07:38 +0000
commit9f514b66d16beb05c95efd0f870c57b4502e7b9e (patch)
treef60e8868e9fffa4253d71dd33e44691f0ac5f6e3 /pysnmp/proto
parent04d59af79eb8ea1de9ce4efc1d6bb222cb59a451 (diff)
downloadpysnmp-git-9f514b66d16beb05c95efd0f870c57b4502e7b9e.tar.gz
fix to non-MT-safe class attributes at SNMPv3 MP & SEC modules
Diffstat (limited to 'pysnmp/proto')
-rw-r--r--pysnmp/proto/mpmod/rfc3412.py8
-rw-r--r--pysnmp/proto/secmod/rfc3414/service.py6
2 files changed, 7 insertions, 7 deletions
diff --git a/pysnmp/proto/mpmod/rfc3412.py b/pysnmp/proto/mpmod/rfc3412.py
index 801fcbed..a34f8b99 100644
--- a/pysnmp/proto/mpmod/rfc3412.py
+++ b/pysnmp/proto/mpmod/rfc3412.py
@@ -55,7 +55,6 @@ _snmpErrors = {
class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
messageProcessingModelID = univ.Integer(3) # SNMPv3
snmpMsgSpec = SNMPv3Message
- _scopedPDU = ScopedPDU()
_emptyStr = univ.OctetString('')
_msgFlags = {
0: univ.OctetString('\x00'),
@@ -67,6 +66,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
}
def __init__(self):
AbstractMessageProcessingModel.__init__(self)
+ self.__scopedPDU = ScopedPDU()
self.__engineIDs = {}
self.__engineIDsExpQueue = {}
self.__expirationTimer = 0
@@ -122,7 +122,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
debug.logger & debug.flagMP and debug.logger('prepareOutgoingMessage: using contextEngineId %r, contextName %r' % (contextEngineId, contextName))
# 7.1.6
- scopedPDU = self._scopedPDU
+ scopedPDU = self.__scopedPDU
scopedPDU.setComponentByPosition(0, contextEngineId)
scopedPDU.setComponentByPosition(1, contextName)
scopedPDU.setComponentByPosition(2)
@@ -196,7 +196,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
2, self._msgFlags[msgFlags & 0xfc], verifyConstraints=False
)
# XXX
- scopedPDU = self._scopedPDU
+ scopedPDU = self.__scopedPDU
scopedPDU.setComponentByPosition(
0, self._emptyStr, verifyConstraints=False
)
@@ -352,7 +352,7 @@ class SnmpV3MessageProcessingModel(AbstractMessageProcessingModel):
debug.logger & debug.flagMP and debug.logger('prepareResponseMessage: using contextEngineId %r, contextName %r' % (contextEngineId, contextName))
# 7.1.6
- scopedPDU = self._scopedPDU
+ scopedPDU = self.__scopedPDU
scopedPDU.setComponentByPosition(0, contextEngineId)
scopedPDU.setComponentByPosition(1, contextName)
scopedPDU.setComponentByPosition(2)
diff --git a/pysnmp/proto/secmod/rfc3414/service.py b/pysnmp/proto/secmod/rfc3414/service.py
index 2b614d13..586f6a3b 100644
--- a/pysnmp/proto/secmod/rfc3414/service.py
+++ b/pysnmp/proto/secmod/rfc3414/service.py
@@ -40,9 +40,9 @@ class SnmpUSMSecurityModel(AbstractSecurityModel):
aes256.Aes256.serviceID: aes256.Aes256(),
nopriv.NoPriv.serviceID: nopriv.NoPriv()
}
- _securityParametersSpec = UsmSecurityParameters()
def __init__(self):
AbstractSecurityModel.__init__(self)
+ self.__securityParametersSpec = UsmSecurityParameters()
self.__timeline = {}
self.__timelineExpQueue = {}
self.__expirationTimer = 0
@@ -277,7 +277,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel):
errorIndication = errind.unsupportedSecurityLevel
)
- securityParameters = self._securityParametersSpec
+ securityParameters = self.__securityParametersSpec
scopedPDUData = msg.setComponentByPosition(3).getComponentByPosition(3)
scopedPDUData.setComponentByPosition(
@@ -487,7 +487,7 @@ class SnmpUSMSecurityModel(AbstractSecurityModel):
try:
securityParameters, rest = decoder.decode(
securityParameters,
- asn1Spec=self._securityParametersSpec
+ asn1Spec=self.__securityParametersSpec
)
except PyAsn1Error:
snmpInASNParseErrs, = snmpEngine.msgAndPduDsp.mibInstrumController.mibBuilder.importSymbols('__SNMPv2-MIB', 'snmpInASNParseErrs')