| Server IP : 93.86.61.54 / Your IP : 216.73.216.156 Web Server : Apache/2.4.62 (Ubuntu) System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64 User : www-data ( 33) PHP Version : 8.4.22 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib/python3/dist-packages/pysnmp/hlapi/ |
Upload File : |
#
# This file is part of pysnmp software.
#
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
from pyasn1.compat.octets import null
from pysnmp.carrier.base import AbstractTransport
from pysnmp import error
__all__ = []
class AbstractTransportTarget(object):
transportDomain = None
protoTransport = AbstractTransport
def __init__(self, transportAddr, timeout=1, retries=5, tagList=null):
self.transportAddr = self._resolveAddr(transportAddr)
self.timeout = timeout
self.retries = retries
self.tagList = tagList
self.iface = None
self.transport = None
def __repr__(self):
return '%s(%r, timeout=%r, retries=%r, tagList=%r)' % (
self.__class__.__name__, self.transportAddr,
self.timeout, self.retries, self.tagList
)
def getTransportInfo(self):
return self.transportDomain, self.transportAddr
def setLocalAddress(self, iface):
"""Set source address.
Parameters
----------
iface : tuple
Indicates network address of a local interface from which SNMP packets will be originated.
Format is the same as of `transportAddress`.
Returns
-------
self
"""
self.iface = iface
return self
def openClientMode(self):
self.transport = self.protoTransport().openClientMode(self.iface)
return self.transport
def verifyDispatcherCompatibility(self, snmpEngine):
if not self.protoTransport.isCompatibleWithDispatcher(snmpEngine.transportDispatcher):
raise error.PySnmpError('Transport %r is not compatible with dispatcher %r' % (
self.protoTransport, snmpEngine.transportDispatcher))
def _resolveAddr(self, transportAddr):
raise NotImplementedError()