SYNOPSIS

    use Mon::SNMP;

    $trap = new Mon::SNMP;

    $trap->buffer($snmptrap);

    %traphash = $trap->decode;

    $error = $trap->error;

DESCRIPTION

Mon::SNMP provides methods to decode \s-1SNMP\s0 trap PDUs. It is based on Graham Barr's Convert::BER module, and its purpose is to provide \s-1SNMP\s0 trap handling to \*(L"mon\*(R".

It is not complete, so don't bother trying to use it unless you are ready to debug and write some code.

METHODS

new

creates a new Mon::SNMP object.

buffer ( buffer )

Assigns a raw \s-1SNMP\s0 trap message to the object.

decode

Decodes a \s-1SNMP\s0 trap message, and returns a hash of the variable assignments for the \s-1SNMP\s0 header and trap protocol data unit of the associated message. The hash consists of the following members: version => SNMP version (1) community => community string ent_OID => enterprise OID of originating agent agentaddr => IP address of originating agent generic_trap => /COLDSTART|WARMSTART|LINKDOWN|LINKUP|AUTHFAIL|EGPNEIGHBORLOSS|ENTERPRISESPECIFIC/ specific_trap => specific trap type (integer) timeticks => timeticks (integer) varbindlist => { oid1 => value, oid2 => value, ... }

ERRORS

All methods return a hash with no elements upon errors which they detect, and the detail of the error is available from the

EXAMPLES

use Mon::SNMP;

$trap = new Mon::SNMP;

$trap->buffer($snmptrap);

%traphash = $trap->decode;

foreach $oid (keys $traphash{"varbindlist"}) { $val = $traphash{"varbindlist"}{$oid}; print "oid($oid) = val($val)\n"; }

ENVIRONMENT

None.

RELATED TO Mon::SNMP…

Graham Barr's Convert::BER module.

NOTES

CAVEATS

Mon::SNMP depends upon Convert::BER to do the real work.