diff --git a/lib/App/Netdisco/Transport/SNMP.pm b/lib/App/Netdisco/Transport/SNMP.pm index 04f934c2..ead74a7a 100644 --- a/lib/App/Netdisco/Transport/SNMP.pm +++ b/lib/App/Netdisco/Transport/SNMP.pm @@ -180,6 +180,18 @@ sub _snmp_connect_generic { debug sprintf 'snmp transport running in offline mode for: [%s]', $device->ip; } + # any net-snmp options to add or override + foreach my $k (keys %{ setting('net_snmp_options') }) { + $snmp_args{ $k } = setting('net_snmp_options')->{ $k }; + } + + if (scalar keys %{ setting('net_snmp_options') }) { + foreach my $k (sort keys %snmp_args) { + next if $k eq 'MibDirs'; + debug sprintf 'snmp transport conf: %s => %s', $k, $snmp_args{ $k }; + } + } + # get the community string(s) my @communities = get_communities($device, $mode); diff --git a/share/config.yml b/share/config.yml index 718ee06a..4560e192 100644 --- a/share/config.yml +++ b/share/config.yml @@ -316,6 +316,7 @@ nonincreasing: false snmpver: 3 snmptimeout: 3000000 snmpretries: 2 +net_snmp_options: {} snmp_remoteport: {} snmp_field_protection: device: