summaryrefslogtreecommitdiff
path: root/examples/v3arch/asyncore/agent/cmdrsp
diff options
context:
space:
mode:
authorIlya Etingof <etingof@gmail.com>2019-02-12 09:16:17 +0100
committerGitHub <noreply@github.com>2019-02-12 09:16:17 +0100
commitb9a7b9c955df98b1e5eec250f418c3df3b7d0199 (patch)
tree3364eb15031352859586e8eb6aa49759a23f9c72 /examples/v3arch/asyncore/agent/cmdrsp
parentc5f7842c430ad3431bee793362ef11cff9f1e0de (diff)
downloadpysnmp-git-b9a7b9c955df98b1e5eec250f418c3df3b7d0199.tar.gz
Reformat example scripts for easier reading (#241)
Diffstat (limited to 'examples/v3arch/asyncore/agent/cmdrsp')
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/alternative-mib-tree.py7
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/custom-mib-controller.py5
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/custom-snmp-engine-id.py4
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/implementing-scalar-mib-objects.py4
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/implementing-snmp-table.py29
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/listen-on-ipv4-and-ipv6-interfaces.py5
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/listen-on-multiple-interfaces.py5
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/listening-on-virtual-network-interface.py4
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-communities.py4
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-engines.py4
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/multiple-usm-users.py6
-rw-r--r--examples/v3arch/asyncore/agent/cmdrsp/observe-request-processing.py11
12 files changed, 54 insertions, 34 deletions
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/alternative-mib-tree.py b/examples/v3arch/asyncore/agent/cmdrsp/alternative-mib-tree.py
index 257f9676..42d19cf7 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/alternative-mib-tree.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/alternative-mib-tree.py
@@ -45,7 +45,8 @@ config.addV3User(
)
# Allow full MIB access for each user at VACM
-config.addVacmUser(snmpEngine, 3, 'usr-md5-none', 'authNoPriv', (1, 3, 6, 1, 2, 1), (1, 3, 6, 1, 2, 1))
+config.addVacmUser(snmpEngine, 3, 'usr-md5-none', 'authNoPriv',
+ (1, 3, 6, 1, 2, 1), (1, 3, 6, 1, 2, 1))
# Create an SNMP context with ContextEngineId = 8000000001020304
snmpContext = context.SnmpContext(
@@ -72,6 +73,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/custom-mib-controller.py b/examples/v3arch/asyncore/agent/cmdrsp/custom-mib-controller.py
index 65637f3e..0368882a 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/custom-mib-controller.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/custom-mib-controller.py
@@ -53,6 +53,7 @@ snmpContext = context.SnmpContext(snmpEngine)
# any Managed Objects attached. It supports only GET's and
# always echos request var-binds in response.
class EchoMibInstrumController(instrum.AbstractMibInstrumController):
+
def readMibObjects(self, *varBinds, **context):
cbFun = context.get('cbFun')
if cbFun:
@@ -76,6 +77,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/custom-snmp-engine-id.py b/examples/v3arch/asyncore/agent/cmdrsp/custom-snmp-engine-id.py
index bd54caed..fd51542f 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/custom-snmp-engine-id.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/custom-snmp-engine-id.py
@@ -60,6 +60,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/implementing-scalar-mib-objects.py b/examples/v3arch/asyncore/agent/cmdrsp/implementing-scalar-mib-objects.py
index 74e8c5db..73641d70 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/implementing-scalar-mib-objects.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/implementing-scalar-mib-objects.py
@@ -80,6 +80,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/implementing-snmp-table.py b/examples/v3arch/asyncore/agent/cmdrsp/implementing-snmp-table.py
index bf15aedf..cedcc15e 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/implementing-snmp-table.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/implementing-snmp-table.py
@@ -47,7 +47,8 @@ config.addTransport(
config.addV1System(snmpEngine, 'my-area', 'public')
# Allow read MIB access for this user / securityModels at VACM
-config.addVacmUser(snmpEngine, 2, 'my-area', 'noAuthNoPriv', (1, 3, 6, 6), (1, 3, 6, 6))
+config.addVacmUser(snmpEngine, 2, 'my-area', 'noAuthNoPriv',
+ (1, 3, 6, 6), (1, 3, 6, 6))
# Create an SNMP context
snmpContext = context.SnmpContext(snmpEngine)
@@ -72,17 +73,24 @@ RowStatus, = mibBuilder.importSymbols('SNMPv2-TC', 'RowStatus')
mibBuilder.exportSymbols(
'__EXAMPLE-MIB',
# table object
- exampleTable=MibTable((1, 3, 6, 6, 1)).setMaxAccess('readcreate'),
+ exampleTable=MibTable((1, 3, 6, 6, 1))
+ .setMaxAccess('readcreate'),
# table row object, also carries references to table indices
- exampleTableEntry=MibTableRow((1, 3, 6, 6, 1, 5)).setMaxAccess('readcreate').setIndexNames((0, '__EXAMPLE-MIB', 'exampleTableColumn1')),
+ exampleTableEntry=MibTableRow((1, 3, 6, 6, 1, 5))
+ .setMaxAccess('readcreate')
+ .setIndexNames((0, '__EXAMPLE-MIB', 'exampleTableColumn1')),
# table column: string index
- exampleTableColumn1=MibTableColumn((1, 3, 6, 6, 1, 5, 1), v2c.OctetString()).setMaxAccess('readcreate'),
+ exampleTableColumn1=MibTableColumn((1, 3, 6, 6, 1, 5, 1), v2c.OctetString())
+ .setMaxAccess('readcreate'),
# table column: string value
- exampleTableColumn2=MibTableColumn((1, 3, 6, 6, 1, 5, 2), v2c.OctetString()).setMaxAccess('readcreate'),
+ exampleTableColumn2=MibTableColumn((1, 3, 6, 6, 1, 5, 2), v2c.OctetString())
+ .setMaxAccess('readcreate'),
# table column: integer value with default
- exampleTableColumn3=MibTableColumn((1, 3, 6, 6, 1, 5, 3), v2c.Integer32(123)).setMaxAccess('readcreate'),
+ exampleTableColumn3=MibTableColumn((1, 3, 6, 6, 1, 5, 3), v2c.Integer32(123))
+ .setMaxAccess('readcreate'),
# table column: row status
- exampleTableStatus=MibTableColumn((1, 3, 6, 6, 1, 5, 4), RowStatus('notExists')).setMaxAccess('readcreate')
+ exampleTableStatus=MibTableColumn((1, 3, 6, 6, 1, 5, 4), RowStatus('notExists'))
+ .setMaxAccess('readcreate')
)
# --- end of custom SNMP table definition, empty table now exists ---
@@ -99,8 +107,11 @@ mibBuilder.exportSymbols(
'exampleTableColumn3',
'exampleTableStatus'
)
+
rowInstanceId = exampleTableEntry.getInstIdFromIndices('example record one')
+
mibInstrumentation = snmpContext.getMibInstrum()
+
mibInstrumentation.writeMibObjects(
(exampleTableColumn2.name + rowInstanceId, 'my string value'),
(exampleTableColumn3.name + rowInstanceId, 123456),
@@ -121,6 +132,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/listen-on-ipv4-and-ipv6-interfaces.py b/examples/v3arch/asyncore/agent/cmdrsp/listen-on-ipv4-and-ipv6-interfaces.py
index 1334fd8d..a1a4e853 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/listen-on-ipv4-and-ipv6-interfaces.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/listen-on-ipv4-and-ipv6-interfaces.py
@@ -33,6 +33,7 @@ config.addTransport(
udp.DOMAIN_NAME,
udp.UdpTransport().openServerMode(('127.0.0.1', 161))
)
+
# UDP over IPv6 at [::1]:161
config.addTransport(
snmpEngine,
@@ -63,6 +64,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/listen-on-multiple-interfaces.py b/examples/v3arch/asyncore/agent/cmdrsp/listen-on-multiple-interfaces.py
index c8088ed0..bfb0b4ef 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/listen-on-multiple-interfaces.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/listen-on-multiple-interfaces.py
@@ -32,6 +32,7 @@ config.addTransport(
udp.DOMAIN_NAME + (1,),
udp.UdpTransport().openServerMode(('127.0.0.1', 161))
)
+
# UDP over IPv4 at 127.0.0.2:161
config.addTransport(
snmpEngine,
@@ -62,6 +63,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/listening-on-virtual-network-interface.py b/examples/v3arch/asyncore/agent/cmdrsp/listening-on-virtual-network-interface.py
index a501aec3..c6bfc33f 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/listening-on-virtual-network-interface.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/listening-on-virtual-network-interface.py
@@ -85,7 +85,7 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.observer.unregisterObserver()
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-communities.py b/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-communities.py
index c2180ade..8aef067d 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-communities.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-communities.py
@@ -60,6 +60,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-engines.py b/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-engines.py
index b65cd63f..00e241c2 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-engines.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/multiple-snmp-engines.py
@@ -88,6 +88,6 @@ transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
transportDispatcher.runDispatcher()
-except:
+
+finally:
transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/multiple-usm-users.py b/examples/v3arch/asyncore/agent/cmdrsp/multiple-usm-users.py
index 4a9f5162..45b4d113 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/multiple-usm-users.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/multiple-usm-users.py
@@ -43,11 +43,13 @@ config.addV3User(
config.USM_AUTH_HMAC96_MD5, 'authkey1',
config.USM_PRIV_CBC56_DES, 'privkey1'
)
+
# user: usr-sha-none, auth: SHA, priv NONE
config.addV3User(
snmpEngine, 'usr-sha-none',
config.USM_AUTH_HMAC96_SHA, 'authkey1'
)
+
# user: usr-sha-none, auth: SHA, priv AES
config.addV3User(
snmpEngine, 'usr-sha-aes128',
@@ -75,6 +77,6 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.transportDispatcher.closeDispatcher()
- raise
diff --git a/examples/v3arch/asyncore/agent/cmdrsp/observe-request-processing.py b/examples/v3arch/asyncore/agent/cmdrsp/observe-request-processing.py
index a7c1acae..44c9a92e 100644
--- a/examples/v3arch/asyncore/agent/cmdrsp/observe-request-processing.py
+++ b/examples/v3arch/asyncore/agent/cmdrsp/observe-request-processing.py
@@ -36,7 +36,9 @@ snmpEngine = engine.SnmpEngine()
def requestObserver(snmpEngine, execpoint, variables, cbCtx):
print('Execution point: %s' % execpoint)
print('* transportDomain: %s' % '.'.join([str(x) for x in variables['transportDomain']]))
- print('* transportAddress: %s (local %s)' % ('@'.join([str(x) for x in variables['transportAddress']]), '@'.join([str(x) for x in variables['transportAddress'].getLocalAddress()])))
+ print('* transportAddress: %s (local %s)' % (
+ '@'.join([str(x) for x in variables['transportAddress']]), '@'.join(
+ [str(x) for x in variables['transportAddress'].getLocalAddress()])))
print('* securityModel: %s' % variables['securityModel'])
print('* securityName: %s' % variables['securityName'])
print('* securityLevel: %s' % variables['securityLevel'])
@@ -70,7 +72,8 @@ config.addV3User(
)
# Allow full MIB access for each user at VACM
-config.addVacmUser(snmpEngine, 3, 'usr-md5-des', 'authPriv', (1, 3, 6, 1, 2, 1), (1, 3, 6, 1, 2, 1))
+config.addVacmUser(snmpEngine, 3, 'usr-md5-des', 'authPriv',
+ (1, 3, 6, 1, 2, 1), (1, 3, 6, 1, 2, 1))
# Get default SNMP context this SNMP engine serves
snmpContext = context.SnmpContext(snmpEngine)
@@ -87,7 +90,7 @@ snmpEngine.transportDispatcher.jobStarted(1)
# Run I/O dispatcher which would receive queries and send responses
try:
snmpEngine.transportDispatcher.runDispatcher()
-except:
+
+finally:
snmpEngine.observer.unregisterObserver()
snmpEngine.transportDispatcher.closeDispatcher()
- raise