diff options
author | elie <elie> | 2005-07-12 10:47:03 +0000 |
---|---|---|
committer | elie <elie> | 2005-07-12 10:47:03 +0000 |
commit | 160b479b0429f7cee07fb22c3cf498e3bff5f90a (patch) | |
tree | 4bd8364aa2fc3fae79bbabdc21e17e4d6f753ffc | |
parent | d58d3a07f6420255b2d120ef1502aa72564395e1 (diff) | |
download | pysnmp-160b479b0429f7cee07fb22c3cf498e3bff5f90a.tar.gz |
separate snmpContext from CmdRspBase to re-use it in notification originator app
-rw-r--r-- | pysnmp/entity/rfc3413/cmdrsp.py | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/pysnmp/entity/rfc3413/cmdrsp.py b/pysnmp/entity/rfc3413/cmdrsp.py index 28fdef1..fe47fc2 100644 --- a/pysnmp/entity/rfc3413/cmdrsp.py +++ b/pysnmp/entity/rfc3413/cmdrsp.py @@ -9,27 +9,12 @@ vacmID = 3 class CmdRspBase: pduTypes = () - def __init__(self, snmpEngine, contextEngineId=None): + def __init__(self, snmpEngine, snmpContext): snmpEngine.msgAndPduDsp.registerContextEngineId( - contextEngineId, self.pduTypes, self.processPdu + snmpContext.contextEngineId, self.pduTypes, self.processPdu ) - self.__contextEngineId = contextEngineId # for unregistration + self.snmpContext = snmpContext # for unregistration self.__pendingReqs = {} - self.__contextNames = {} - - def registerContextName(self, contextName, mibInstrumController): - if self.__contextNames.has_key(contextName): - raise error.ProtocolError( - 'Duplicate contextNames %s' % contextName - ) - self.__contextNames[contextName] = mibInstrumController - - def unregisterContextName(self, contextName): - if not self.__contextNames.has_key(contextName): - raise error.ProtocolError( - 'No such contextName %s' % contextName - ) - del self.__contextNames[contextName] def _handleManagementOperation( self, snmpEngine, contextMibInstrumCtl, PDU, (acFun, acCtx) @@ -37,7 +22,7 @@ class CmdRspBase: def close(self, snmpEngine): snmpEngine.msgAndPduDsp.unregisterContextEngineId( - self.__contextEngineId, self.pduTypes + self.snmpContext.contextEngineId, self.pduTypes ) def __sendResponse(self, snmpEngine, errorStatus, errorIndex, @@ -134,10 +119,7 @@ class CmdRspBase: statusInformation ) - if self.__contextNames.has_key(str(contextName)): - contextMibInstrumCtl = self.__contextNames[contextName] - else: - contextMibInstrumCtl = snmpEngine.msgAndPduDsp.mibInstrumController + contextMibInstrumCtl = self.snmpContext.getMibInstrum(contextName) acCtx = ( snmpEngine, securityModel, securityName, securityLevel, contextName |