summaryrefslogtreecommitdiff
path: root/examples/hlapi/v3arch/asyncore/manager/cmdgen
diff options
context:
space:
mode:
Diffstat (limited to 'examples/hlapi/v3arch/asyncore/manager/cmdgen')
-rw-r--r--examples/hlapi/v3arch/asyncore/manager/cmdgen/multiple-concurrent-queries-over-ipv4-and-ipv6.py15
-rw-r--r--examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-mibs-from-multiple-agents-at-once-over-ipv4-and-ipv6.py11
-rw-r--r--examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-whole-mib.py3
-rw-r--r--examples/hlapi/v3arch/asyncore/manager/cmdgen/query-multiple-snmp-engines-over-ipv4-and-ipv6.py20
-rw-r--r--examples/hlapi/v3arch/asyncore/manager/cmdgen/v2c-get.py3
5 files changed, 42 insertions, 10 deletions
diff --git a/examples/hlapi/v3arch/asyncore/manager/cmdgen/multiple-concurrent-queries-over-ipv4-and-ipv6.py b/examples/hlapi/v3arch/asyncore/manager/cmdgen/multiple-concurrent-queries-over-ipv4-and-ipv6.py
index ba9ffed3..1422fe3e 100644
--- a/examples/hlapi/v3arch/asyncore/manager/cmdgen/multiple-concurrent-queries-over-ipv4-and-ipv6.py
+++ b/examples/hlapi/v3arch/asyncore/manager/cmdgen/multiple-concurrent-queries-over-ipv4-and-ipv6.py
@@ -20,28 +20,32 @@ from pysnmp.hlapi.v3arch.asyncore import *
# List of targets in the followin format:
# ( ( authData, transportTarget, varNames ), ... )
-targets = (
+TARGETS = (
# 1-st target (SNMPv1 over IPv4/UDP)
(CommunityData('public', mpModel=0),
UdpTransportTarget(('demo.snmplabs.com', 161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysDescr', 0)),
ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysLocation', 0)))),
+
# 2-nd target (SNMPv2c over IPv4/UDP)
(CommunityData('public'),
UdpTransportTarget(('demo.snmplabs.com', 161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysDescr', 0)),
ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysLocation', 0)))),
- # 3-nd target (SNMPv2c over IPv4/UDP) - same community and
+
+ # 3-nd target (SNMPv2c over IPv4/UDP) - same community and
# different transport address.
(CommunityData('public'),
UdpTransportTarget(('localhost', 161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysContact', 0)),
ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysName', 0)))),
+
# 4-nd target (SNMPv3 over IPv4/UDP)
(UsmUserData('usr-md5-des', 'authkey1', 'privkey1'),
UdpTransportTarget(('demo.snmplabs.com', 161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysDescr', 0)),
ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysLocation', 0)))),
+
# 5-th target (SNMPv3 over IPv6/UDP)
(UsmUserData('usr-md5-none', 'authkey1'),
Udp6TransportTarget(('::1', 161)),
@@ -56,15 +60,20 @@ targets = (
# noinspection PyUnusedLocal,PyUnusedLocal
def cbFun(snmpEngine, sendRequestHandle, errorIndication,
errorStatus, errorIndex, varBinds, cbCtx):
+
authData, transportTarget = cbCtx
+
print('%s via %s' % (authData, transportTarget))
+
if errorIndication:
print(errorIndication)
return True
+
elif errorStatus:
print('%s at %s' % (errorStatus.prettyPrint(),
errorIndex and varBinds[int(errorIndex) - 1][0] or '?'))
return True
+
else:
for varBind in varBinds:
print(' = '.join([x.prettyPrint() for x in varBind]))
@@ -73,7 +82,7 @@ def cbFun(snmpEngine, sendRequestHandle, errorIndication,
snmpEngine = SnmpEngine()
# Submit GET requests
-for authData, transportTarget, varNames in targets:
+for authData, transportTarget, varNames in TARGETS:
getCmd(snmpEngine, authData, transportTarget, ContextData(), *varNames,
cbFun=cbFun, cbCtx=(authData, transportTarget))
diff --git a/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-mibs-from-multiple-agents-at-once-over-ipv4-and-ipv6.py b/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-mibs-from-multiple-agents-at-once-over-ipv4-and-ipv6.py
index 38e96f45..44247b9a 100644
--- a/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-mibs-from-multiple-agents-at-once-over-ipv4-and-ipv6.py
+++ b/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-mibs-from-multiple-agents-at-once-over-ipv4-and-ipv6.py
@@ -25,18 +25,22 @@ targets = (
UdpTransportTarget(('demo.snmplabs.com', 161)),
(ObjectType(ObjectIdentity('1.3.6.1.2.1')),
ObjectType(ObjectIdentity('1.3.6.1.3.1')))),
+
# 2-nd target (SNMPv2c over IPv4/UDP)
(CommunityData('public'),
UdpTransportTarget(('demo.snmplabs.com', 161)),
(ObjectType(ObjectIdentity('1.3.6.1.4.1')),)),
+
# 3-nd target (SNMPv3 over IPv4/UDP)
(UsmUserData('usr-md5-des', 'authkey1', 'privkey1'),
UdpTransportTarget(('demo.snmplabs.com', 161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'system')),)),
+
# 4-th target (SNMPv3 over IPv6/UDP)
(UsmUserData('usr-md5-none', 'authkey1'),
Udp6TransportTarget(('::1', 161)),
(ObjectType(ObjectIdentity('IF-MIB', 'ifTable')),))
+
# N-th target
# ...
)
@@ -46,15 +50,20 @@ targets = (
# noinspection PyUnusedLocal,PyUnusedLocal
def cbFun(snmpEngine, sendRequestHandle, errorIndication,
errorStatus, errorIndex, varBindTable, cbCtx):
- (authData, transportTarget) = cbCtx
+
+ authData, transportTarget = cbCtx
+
print('%s via %s' % (authData, transportTarget))
+
if errorIndication:
print(errorIndication)
return
+
elif errorStatus:
print('%s at %s' % (errorStatus.prettyPrint(),
errorIndex and varBindTable[-1][int(errorIndex) - 1][0] or '?'))
return
+
else:
for varBindRow in varBindTable:
for varBind in varBindRow:
diff --git a/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-whole-mib.py b/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-whole-mib.py
index a0aa02b9..e6fe324a 100644
--- a/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-whole-mib.py
+++ b/examples/hlapi/v3arch/asyncore/manager/cmdgen/pull-whole-mib.py
@@ -21,13 +21,16 @@ from pysnmp.hlapi.v3arch.asyncore import *
# noinspection PyUnusedLocal,PyUnusedLocal,PyUnusedLocal
def cbFun(snmpEngine, sendRequestHandle, errorIndication,
errorStatus, errorIndex, varBindTable, cbCtx):
+
if errorIndication:
print(errorIndication)
return
+
elif errorStatus:
print('%s at %s' % (errorStatus.prettyPrint(),
errorIndex and varBindTable[-1][int(errorIndex) - 1][0] or '?'))
return
+
else:
for varBindRow in varBindTable:
for varBind in varBindRow:
diff --git a/examples/hlapi/v3arch/asyncore/manager/cmdgen/query-multiple-snmp-engines-over-ipv4-and-ipv6.py b/examples/hlapi/v3arch/asyncore/manager/cmdgen/query-multiple-snmp-engines-over-ipv4-and-ipv6.py
index ad6e838f..fc2143d4 100644
--- a/examples/hlapi/v3arch/asyncore/manager/cmdgen/query-multiple-snmp-engines-over-ipv4-and-ipv6.py
+++ b/examples/hlapi/v3arch/asyncore/manager/cmdgen/query-multiple-snmp-engines-over-ipv4-and-ipv6.py
@@ -33,22 +33,25 @@ from pysnmp.carrier.asyncore.dispatch import AsyncoreDispatcher
# List of targets in the following format:
# ( ( authData, transportTarget, varNames ), ... )
-targets = (
+TARGETS = (
# 1-st target (SNMPv1 over IPv4/UDP)
(CommunityData('public', mpModel=0),
UdpTransportTarget(('demo.snmplabs.com', 161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysDescr', 0)),
ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysLocation', 0)))),
+
# 2-nd target (SNMPv2c over IPv4/UDP)
(CommunityData('public'),
UdpTransportTarget(('demo.snmplabs.com', 1161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysDescr', 0)),
ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysLocation', 0)))),
+
# 3-nd target (SNMPv3 over IPv4/UDP)
(UsmUserData('usr-md5-des', 'authkey1', 'privkey1'),
UdpTransportTarget(('demo.snmplabs.com', 2161)),
(ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysDescr', 0)),
ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysLocation', 0))))
+
# N-th target
# ...
)
@@ -58,15 +61,19 @@ targets = (
# noinspection PyUnusedLocal,PyUnusedLocal
def cbFun(snmpEngine, sendRequestHandle, errorIndication,
errorStatus, errorIndex, varBinds, cbCtx):
- (snmpEngine, authData, transportTarget) = cbCtx
+ authData, transportTarget = cbCtx
+
print('snmpEngine %s: %s via %s' % (snmpEngine.snmpEngineID.prettyPrint(), authData, transportTarget))
+
if errorIndication:
print(errorIndication)
return True
+
elif errorStatus:
print('%s at %s' % (errorStatus.prettyPrint(),
errorIndex and varBinds[int(errorIndex) - 1][0] or '?'))
return True
+
else:
for varBind in varBinds:
print(' = '.join([x.prettyPrint() for x in varBind]))
@@ -86,10 +93,11 @@ snmpEngineA.registerTransportDispatcher(transportDispatcher, 'A')
snmpEngineB = SnmpEngine()
snmpEngineB.registerTransportDispatcher(transportDispatcher, 'B')
-for authData, transportTarget, varBinds in targets:
- snmpEngine = transportTarget.getTransportInfo()[1][1] % 3 and \
- snmpEngineA or snmpEngineB
+for authData, transportTarget, varBinds in TARGETS:
+ snmpEngine = (transportTarget.getTransportInfo()[1][1] % 3 and
+ snmpEngineA or snmpEngineB)
+
getCmd(snmpEngine, authData, transportTarget, ContextData(), *varBinds,
- cbFun=cbFun, cbCtx=(snmpEngine, authData, transportTarget))
+ cbFun=cbFun, cbCtx=(authData, transportTarget))
transportDispatcher.runDispatcher()
diff --git a/examples/hlapi/v3arch/asyncore/manager/cmdgen/v2c-get.py b/examples/hlapi/v3arch/asyncore/manager/cmdgen/v2c-get.py
index ae8f8262..da2e7b34 100644
--- a/examples/hlapi/v3arch/asyncore/manager/cmdgen/v2c-get.py
+++ b/examples/hlapi/v3arch/asyncore/manager/cmdgen/v2c-get.py
@@ -20,13 +20,16 @@ from pysnmp.hlapi.v3arch.asyncore import *
# noinspection PyUnusedLocal,PyUnusedLocal,PyUnusedLocal
def cbFun(snmpEngine, sendRequestHandle, errorIndication,
errorStatus, errorIndex, varBinds, cbCtx):
+
if errorIndication:
print(errorIndication)
return
+
elif errorStatus:
print('%s at %s' % (errorStatus.prettyPrint(),
errorIndex and varBindTable[-1][int(errorIndex) - 1][0] or '?'))
return
+
else:
for varBind in varBinds:
print(' = '.join([x.prettyPrint() for x in varBind]))