A comprehensive Python SNMP library supporting v1/v2c/v3 with authentication and privacy protocols
84
{
"context": "This criteria evaluates how well the engineer uses pysnmp's transport layer features to bind SNMP requests to specific local network interfaces on multi-homed systems. The focus is on correct usage of transport configuration APIs for interface binding.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Transport binding",
"description": "Uses UdpAsyncioTransport (or UdpTransport from v1arch/v3arch carrier modules) with open_client_mode() method, passing the iface parameter as a tuple containing the local IP address to bind to",
"max_score": 30
},
{
"name": "Transport registration",
"description": "Properly registers the configured transport with the SNMP dispatcher or engine using register_transport() or equivalent configuration method",
"max_score": 25
},
{
"name": "SNMP GET operation",
"description": "Implements SNMP GET request functionality using pysnmp APIs (either low-level send_message() or high-level get_cmd() depending on architecture choice)",
"max_score": 20
},
{
"name": "Error handling",
"description": "Properly handles and reports transport errors (e.g., invalid local addresses, unreachable targets, timeouts) by catching appropriate pysnmp exceptions or checking errorIndication",
"max_score": 15
},
{
"name": "Response processing",
"description": "Correctly extracts and formats OID values from SNMP responses using pysnmp's response handling APIs (e.g., varBinds, apiPDU methods, or high-level iteration)",
"max_score": 10
}
]
}Install with Tessl CLI
npx tessl i tessl/pypi-pysnmpevals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10