def walk_for_export(snmp_config, oid): # type: (snmp_utils.SNMPHostConfig, str) -> List[Tuple[str, str]] if snmp_config.is_inline_snmp_host: backend = inline_snmp.InlineSNMPBackend() # type: snmp_utils.ABCSNMPBackend else: backend = classic_snmp.ClassicSNMPBackend() rows = backend.walk(snmp_config, oid) return _convert_rows_for_stored_walk(rows)
def factory(snmp_config, enforce_stored_walks): # type: (snmp_utils.SNMPHostConfig, bool) -> snmp_utils.ABCSNMPBackend if enforce_stored_walks or snmp_config.is_usewalk_host: return StoredWalkSNMPBackend() if snmp_config.is_inline_snmp_host: return inline_snmp.InlineSNMPBackend() return classic_snmp.ClassicSNMPBackend()
def test_snmp_proto_spec(monkeypatch, is_ipv6, expected): snmp_config = snmp_utils.SNMPHostConfig( is_ipv6_primary=is_ipv6, hostname="localhost", ipaddress="127.0.0.1", credentials="public", port=161, is_bulkwalk_host=False, is_snmpv2or3_without_bulkwalk_host=False, bulk_walk_size_of=10, timing={}, oid_range_limits=[], snmpv3_contexts=[], character_encoding=None, is_usewalk_host=False, is_inline_snmp_host=False, ) assert classic_snmp.ClassicSNMPBackend()._snmp_proto_spec(snmp_config) == expected
def test_snmp_walk_command(monkeypatch, settings, expected): assert classic_snmp.ClassicSNMPBackend()._snmp_walk_command(settings.snmp_config, settings.context_name) == expected