summaryrefslogtreecommitdiff
path: root/perl/SNMP/examples/mibtree.pl
blob: 0616126208ec33cf3c3a9e1501f129114fdb3ee3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use SNMP;
$SNMP::save_descriptions = 1; # must be set prior to mib initialization
SNMP::initMib(); # parses default list of Mib modules from default dirs

# read dotted decimal oid or symbolic name to look up
# partial name will be searched and all matches returned
$val = shift || die "supply partial or complete object name or identifier\n";

if ($node = $SNMP::MIB{$val}) {
    print "$node:$node->{label} [$node->{objectID}]\n";
    while (($k,$v) = each %$node) {
	print "\t$k => $v\n";
    }
} else {
    while (($k,$v) = each %SNMP::MIB) {
	print "$v->{label} [$v->{obj}]\n" #accepts unique partial key(objectID)
	    if $k =~ /$val/ or $v->{label} =~ /$val/;
    }
}