Broken bulkwalk in Net-snmp perl binding
am 01.10.2006 17:09:22 von hjjI am using the perl bindings that is part of Net-snmp package.
(http://www.net-snmp.org/)
I have a problem with bulkwalk used from perl.
It works in (FreeBSD 5.4, perl 5.8.6, net-snmp 5.2.1)
It dosnt work in (FreeBSD 6.1, perl 5.8.8, net-snmp 5.2.3)
Upgrading to net-snmp 5.3.1 dont help.
The command line snmpbulkwalk works.
The problems can be recontructed with the example program bulkwalk.pl that
is part of the package.
The snmp is send to the agent and data is returned. But there is returned
garbage from the call. Instead of the array(refs) there is returned something
looking like the parameter passed to bulkwalk.
Ofcourse the program blows up when trying to use this data.
(If community is wrong, this is handled correct)
%./bulkwalk.pl
Not an ARRAY reference at ./bulkwalk.pl line 65.
(65: $num = scalar @$vbarr;)
I have tried to modify and print what is returned:
%./bulkwalk.pl
@resp dump:
$VAR1 = bless( {
'UseLongNames' => 2,
'UseEnums' => 0,
'UseNumeric' => 1,
'BestGuess' => 0,
'SessPtr' => bless( do{\(my $o = 136253952)}, 'SnmpSessionPtr' ),
'LocalPort' => 0,
'ErrorStr' => '',
'UseSprintValue' => 0,
'Community' => 'public',
'ErrorNum' => 0,
'RetryNoSuch' => 0,
'Retries' => 3,
'RemotePort' => '161',
'Version' => '2c',
'ErrorInd' => 0,
'DestHost' => 'localhost:161',
'Timeout' => 300000
}, 'SNMP::Session' );
$VAR2 = 2;
$VAR3 = 8;
$VAR4 = bless( [
bless( [
'sysUpTime'
], 'SNMP::Varbind' ),
bless( [
'ifNumber'
], 'SNMP::Varbind' ),
bless( [
'ifSpeed'
], 'SNMP::Varbind' ),
bless( [
'ifDescr'
], 'SNMP::Varbind' )
], 'SNMP::VarList' );
Not an ARRAY reference at ./bulkwalk.pl line 67.
%
This looks more or less as the parameters passed to $sess->bulkwalk
Any idea of where the problem are?
I have not tried to downgrade, yet.
/hjj