#!/usr/bin/perl use SNMP; use Getopt::Std; %opts = ( M => ".", D => "html"); getopts("M:D:WH:", \%opts) || die "usage: makehtml.pl -W [-M MIBDIR] [-D OUTDIR] files > index.html"; $SNMP::save_descriptions = 1; $ENV{'MIBDIRS'} = $opts{'M'}; $ENV{'SNMPCONFPATH'} = 'bogus'; if (-f "rfclist") { open(I,"rfclist"); while () { if (/^(\d+)\s+([-:\w]+)\s*$/) { my $mib = $2; my $rfc = $1; my @mibs = split(/:/,$mib); foreach my $i (@mibs) { $mibs{$i} = $rfc; } } } close(I); } if (-f "nodemap") { open(I,"nodemap"); while () { if (/^([-\w]+)\s+(\S+)\s*$/) { $nodemap{$1} = $2; } } close(I); } if ($opts{'W'}) { print '
Net-SNMP Distributed MIBs
The following are the MIB files distributed with Net-SNMP. Note that because they are distributed with Net-SNMP does not mean the agent implements them all. Another good place for finding other MIB definitions can be found at the MIB depot.
MIB | RFC | Description | |
---|---|---|---|
";
for (my $i = 0; $i <= $#nodelist; $i++) {
my $node = $nodelist[$i];
if ($i != 0) {
print " ";
}
print "$mib";
if ($#nodelist > 0) {
print " ($node)";
}
print " \n"; } print " [mib file] | \n";
print " rfc$mibs{$mib} | \n" if ($mibs{$mib}); print "\n" if (!$mibs{$mib}); print " | $desc | \n";
print "