summaryrefslogtreecommitdiff
path: root/examples/v3arch/asyncore/oneliner/agent/ntforg/trap-v3-with-custom-engineid.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/v3arch/asyncore/oneliner/agent/ntforg/trap-v3-with-custom-engineid.py')
-rw-r--r--examples/v3arch/asyncore/oneliner/agent/ntforg/trap-v3-with-custom-engineid.py78
1 files changed, 43 insertions, 35 deletions
diff --git a/examples/v3arch/asyncore/oneliner/agent/ntforg/trap-v3-with-custom-engineid.py b/examples/v3arch/asyncore/oneliner/agent/ntforg/trap-v3-with-custom-engineid.py
index bbc9194..f03948f 100644
--- a/examples/v3arch/asyncore/oneliner/agent/ntforg/trap-v3-with-custom-engineid.py
+++ b/examples/v3arch/asyncore/oneliner/agent/ntforg/trap-v3-with-custom-engineid.py
@@ -1,37 +1,45 @@
-#
-# Notification Originator
-#
-# Send SNMP notification using the following options:
-#
-# * SNMPv3
-# * with local snmpEngineId = 0x8000000001020304 (must configure at Receiver)
-# * with user 'usr-sha-aes128', auth: SHA, priv: AES128
-# * over IPv4/UDP
-# * send TRAP notification
-# * with TRAP ID 'authenticationFailure' specified as a MIB symbol
-# * do not include any additional managed object information
-#
-# SNMPv3 TRAPs requires pre-sharing the Notification Originator's
-# value of SnmpEngineId with Notification Receiver. To facilitate that
-# we will use static (e.g. not autogenerated) version of snmpEngineId.
-#
+"""
+SNMPv3 TRAP: auth SHA, privacy: AES128
+++++++++++++++++++++++++++++++++++++++
+
+Send SNMP notification using the following options:
+
+* SNMPv3
+* with local snmpEngineId = 0x8000000001020304 (must configure at Receiver)
+* with user 'usr-sha-aes128', auth: SHA, priv: AES128
+* over IPv4/UDP
+* send TRAP notification
+* with TRAP ID 'authenticationFailure' specified as a MIB symbol
+* do not include any additional managed object information
+
+SNMPv3 TRAPs requires pre-sharing the Notification Originator's
+value of SnmpEngineId with Notification Receiver. To facilitate that
+we will use static (e.g. not autogenerated) version of snmpEngineId.
+
+Functionally similar to:
+
+| $ snmptrap -v3 -l authPriv -u usr-sha-aes -A authkey1 -X privkey1 \
+| -a SHA -x AES \
+| demo.snmplabs.com \
+| 12345 \
+| 1.3.6.1.4.1.20408.4.1.1.2 \
+| '1.3.6.1.2.1.1.1.0' s 'my system'
+
+"""#
from pysnmp.entity.rfc3413.oneliner.ntforg import *
-from pysnmp.proto.rfc1902 import OctetString
-for errorIndication, \
- errorStatus, errorIndex, \
- varBinds in \
- sendNotification(SnmpEngine(
- OctetString(hexValue='8000000001020304')
- ),
- UsmUserData('usr-sha-aes128', 'authkey1', 'privkey1',
- authProtocol=usmHMACSHAAuthProtocol,
- privProtocol=usmAesCfb128Protocol),
- UdpTransportTarget(('localhost', 162)),
- ContextData(),
- 'trap',
- NotificationType(
- ObjectIdentity('SNMPv2-MIB', 'authenticationFailure')
- )):
- if errorIndication:
- print(errorIndication)
+errorIndication, errorStatus, errorIndex, varBinds = next(
+ sendNotification(SnmpEngine(OctetString(hexValue='8000000001020304')),
+ UsmUserData('usr-sha-aes128', 'authkey1', 'privkey1',
+ authProtocol=usmHMACSHAAuthProtocol,
+ privProtocol=usmAesCfb128Protocol),
+ UdpTransportTarget(('localhost', 162)),
+ ContextData(),
+ 'trap',
+ NotificationType(
+ ObjectIdentity('SNMPv2-MIB', 'authenticationFailure')
+ )
+ )
+)
+if errorIndication:
+ print(errorIndication)