diff options
Diffstat (limited to 'pysnmp/entity/engine.py')
-rw-r--r-- | pysnmp/entity/engine.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/pysnmp/entity/engine.py b/pysnmp/entity/engine.py index ecc0aa5..d663d91 100644 --- a/pysnmp/entity/engine.py +++ b/pysnmp/entity/engine.py @@ -140,3 +140,22 @@ class SnmpEngine: self.transportDispatcher.unregisterRecvCbFun(recvId) self.transportDispatcher.unregisterTimerCbFun() self.transportDispatcher = None + + def getMibBuilder(self): + return self.msgAndPduDsp.mibInstrumController.mibBuilder + + # User app may attach opaque objects to SNMP Engine + def setUserContext(self, **kwargs): + self.cache.update( + dict([('__%s' % k, kwargs[k]) for k in kwargs]) + ) + + def getUserContext(self, arg): + return self.cache.get('__%s' % arg) + + def delUserContext(self, arg): + try: + del self.cache['__%s' % arg] + except KeyError: + pass + |