📄 rfc1157.py
字号:
""" An implementation of high-level API to SNMP v.1 message PDU objects (RFC1157). Copyright 1999-2004 by Ilya Etingof <ilya@glas.net>. See LICENSE for details."""# Module public names__all__ = [ 'GetRequestPduMixIn', 'GetNextRequestPduMixIn', 'SetRequestPduMixIn', 'GetResponsePduMixIn', 'ResponsePduMixIn', 'TrapPduMixIn', 'MessageMixIn', 'registerMixIns' ]import pysnmp.proto.api.alpha.rfc1157from pysnmp.proto import rfc1155, rfc1157class RequestPduMixIn: def apiGenGetRequestId(self): return self.apiAlphaGetRequestId().get() def apiGenSetRequestId(self, value): self.apiAlphaSetRequestId(value) def apiGenGetVarBind(self): return map(lambda x: (x[0].get(), x[1]), \ map(lambda x: x.apiAlphaGetOidVal(), \ self.apiAlphaGetVarBindList())) def apiGenSetVarBind(self, varBinds): tempVarBinds = [] for oid, val in varBinds: if val is None: val = rfc1155.Null() tempVarBinds.append((oid, val)) apply(self.apiAlphaSetVarBindList, tempVarBinds) # Request PDU mix-insclass GetRequestPduMixIn(RequestPduMixIn): passclass GetNextRequestPduMixIn(RequestPduMixIn): passclass SetRequestPduMixIn(RequestPduMixIn): passclass GetResponsePduMixIn(RequestPduMixIn): def apiGenGetErrorStatus(self): return self.apiAlphaGetErrorStatus().get() def apiGenSetErrorStatus(self, value): self.apiAlphaSetErrorStatus(value) def apiGenGetErrorIndex(self): return self.apiAlphaGetErrorIndex().get() def apiGenSetErrorIndex(self, value): self.apiAlphaSetErrorIndex(value)# A v2c-style aliasResponsePduMixIn = GetResponsePduMixInclass TrapPduMixIn(RequestPduMixIn): def apiGenGetEnterprise(self): return self.apiAlphaGetEnterprise().get() def apiGenSetEnterprise(self, value): self.apiAlphaSetEnterprise(value) def apiGenGetAgentAddr(self): return self.apiAlphaGetAgentAddr().get() def apiGenSetAgentAddr(self, value): self.apiAlphaSetAgentAddr(value) def apiGenGetGenericTrap(self): return self.apiAlphaGetGenericTrap().get() def apiGenSetGenericTrap(self, value): self.apiAlphaSetGenericTrap(value) def apiGenGetSpecificTrap(self): return self.apiAlphaGetSpecificTrap().get() def apiGenSetSpecificTrap(self, value): self.apiAlphaSetSpecificTrap(value) def apiGenGetTimeStamp(self): return self.apiAlphaGetTimeStamp().get() def apiGenSetTimeStamp(self, value): self.apiAlphaSetTimeStamp(value)class MessageMixIn: def apiGenGetVersion(self): return self.apiAlphaGetVersion().get() def apiGenGetCommunity(self): return self.apiAlphaGetCommunity().get() def apiGenSetCommunity(self, value): self.apiAlphaSetCommunity(value) def apiGenGetPdu(self): return self.apiAlphaGetPdu() def apiGenSetPdu(self, value): self.apiAlphaSetPdu(value)def mixIn(): """Register this module's mix-in classes at their bases """ mixInComps = [ (rfc1157.GetRequestPdu, GetRequestPduMixIn), (rfc1157.GetNextRequestPdu, GetNextRequestPduMixIn), (rfc1157.SetRequestPdu, SetRequestPduMixIn), (rfc1157.GetResponsePdu, GetResponsePduMixIn), (rfc1157.TrapPdu, TrapPduMixIn), (rfc1157.Message, MessageMixIn) ] for (baseClass, mixIn) in mixInComps: if mixIn not in baseClass.__bases__: baseClass.__bases__ = (mixIn, ) + baseClass.__bases__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -