Lars H}kedal lars.hakedal@usit.uio.no writes:
Jeg har ikke noe l?sningsforslag, jeg tenkte bare jeg ville dele det med lista i tilfelle noen satt p? bokser som ikke dukket opp med noen porter.
N? har jeg fikset ios-sw.pl slik at 2916'ene v?re dukker opp med porter.
Det jeg gj?r er ? teste om f?lgende get g?r bra:
my $numInts = $sess->get('ifNumber.0'); [...] if(!($sess->{ErrorNum})) { # Fors?ket p? ? snakke snmpv2c gikk bra
Is?fall gj?re jeg ting p? den vanlige m?te.
} else {
Ellers gj?re jeg det p? den andre m?ten.
Her er et eksempel p? hva den gj?r:
open(SNMPWALK,"snmpwalk -Ov $host $community .1.3.6.1.2.1.2.2.1.2|") || die; while(<SNMPWALK>) { chop; print $_,"\n" if $debug; $$ifindex[$ind][2]=$_; $$ifindex[$ind][1]=$ind; $ind++; }
close SNMPWALK; $ind=0;
Dette kunne helt sikkert v?rt gjort smartere. N? kopierer jeg kode for hver eneste walk. Mareritt ? rette feil, men jeg trodde jeg kunne slippe unna med een while l?kke, men det kan jeg selvsagt ikke... :-/ Det st?rste problemet er at bulkwalk dytter svarene inn i separate variabler som indekseres i 2 dimensjoner og ikke inn i et array som indekseres i 3 dimensjoner. Og jeg hadde/har ikke s? veldig lyst p? ? endre _hele_ ios-sw.pl. Parsingen av $ifindex m/venner og konstruksjon av retur-verdier fra bulk-funksjonen er det jo ikke noe galt med. Et annet (mindre) problem er at jeg m? bruke litt forskjellige opsjoner til snmpwalk for de forskjellige kolonnene.
Jeg har ikke vedlagt filen. Min iboende Pedantic Nitpicker kunne sagt at det er fordi den er merket Copyright <...> og jeg har ikke lisens til ? kopiere den. Jeg mener, s?vidt jeg kan forst? har jeg ikke lov til ? endre fila heller. :-)
Men jeg tror jeg skal spare omverdenen for perl-koden min til jeg har f?tt litt mer erfaring med endringene jeg har gjort.
LaRS.