Hi all,
I managed to implement my own sub-agent in Perl using Agent.pm and it works pretty well apart from one point. The MIB the sub-agent is dealing with contains one object that is defined in this way:
XxxEntry ::= SEQUENCE {
internalError
TCRMINTERNALERROR,
...
}
internalError
TCRMINTERNALERROR,
...
}
TCRMINTERNALERROR ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "foo bar"
SYNTAX BITS {
bit0(0), bit1(1), bit2(2), bit3(3),
bit4(4), bit5(5), bit6(6), bit7(7),
bit8(8), bit9(9), bit10(10), bit11(11),
bit12(12), bit13(13), bit14(14), bit15(15),
bit16(16), bit17(17), bit18(18), bit19(19),
bit20(20), bit21(21), bit22(22), bit23(23),
bit24(24), bit25(25), bit26(26), bit27(27),
bit28(28), bit29(29), bit30(30), bit31(31) }
STATUS current
DESCRIPTION "foo bar"
SYNTAX BITS {
bit0(0), bit1(1), bit2(2), bit3(3),
bit4(4), bit5(5), bit6(6), bit7(7),
bit8(8), bit9(9), bit10(10), bit11(11),
bit12(12), bit13(13), bit14(14), bit15(15),
bit16(16), bit17(17), bit18(18), bit19(19),
bit20(20), bit21(21), bit22(22), bit23(23),
bit24(24), bit25(25), bit26(26), bit27(27),
bit28(28), bit29(29), bit30(30), bit31(31) }
My problem is that I could not manage to use Agent::setValue() appropriately. I already tried a lot, but I could not find out the right coding for my numerical value. For example, if I have a numerical value for "internalError" of 0xabcdabcd (2882382797), how will I have to set $value (I supppose $type will be ASN_BIT_STRING)?
$request->setValue($type, $value);
Currently "snmpget localhost internalError.1" always gives me
Error in paket
Reason: (genError) A general failure occured
and a look into "wireshark" tells me something like "noSuchInstance".
------------------------------------------------------------------------------
_______________________________________________ Net-snmp-coders mailing list Net-snmp-coders@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/net-snmp-coders