[AGENT++] Problem using net-snmp as subagent (Error in packet)

Johnny Ljunggren johnny at navtek.no
Mon Feb 5 06:22:12 CET 2007


Hello

> Sorry, my comments were mistakable. In addition to
> NET_SNMP_WORKAROUNDS you will need also
> to change MAX_AGENTX_REPETITIONS to 1

I tried that but it didn't seem to have any effect. Maybe I did it wrong
but I changed the setting to 1 then compiled the agentx library, and then
recompiled my agent.

I did some more research and found that only the OIDs defined as OID:
SNMPv2-SMI::zeroDotZero will give this error.
ie. IF-MIB::ifSpecific.1 = OID: SNMPv2-SMI::zeroDotZero

I did a snmpget on every single oid and only got the problem with the
above mentioned definition.

I tried to look through the source code but I guess it will take me a
while to get my head around what is happening.

Any idea what's so special about SNMPv2-SMI::zeroDotZero and what I should
be looking for?

>> It seems that NET_SNMP_WORKAROUNDS is enabled by default, so I have it
>> activated. Luckily I'm not running on a 64bit system, but I'm a bit
>> worried anyway.
>> Do you think it would be possible to pay someone with a deeper knowledge
>> about this to fix it?
>> Is net-snmp the only way to get mib-II on linux?
>> Where should I start to try to solve this? (apart from contacting the
>> net-snmp ml, which I already did)
>>>
>>> Have you activated the NET-SNMP work-arounds in
>>> agent++_def.h? The NET-SNMP AgentX implementation
>>> has many bugs. For some of them, I had implemented
>>> work-arounds that can be activated in AGENT++.
>>>
>>> I have reported those bugs to NET-SNMP.org but they
>>> seem not to be able to fix them for about four years
>>> now. When you run the NET-SNMP subagent on a 64bit
>>> machine, things get even worse.
>>>
>>>>
>>>> I've made a master AgentX that uses net-snmp as subagent to provide
>>>> mib-II
>>>> information. I get a general failure if I try to get some of the OIDs.
>>>> This only occurs when running net-snmp as subagent, because it will
>>>> return
>>>> the whole tree if running standalone.
>>>>
>>>> # snmpwalk -v 2c -c public localhost
>>>> <snip some output>
>>>> IF-MIB::ifOutQLen.2 = Gauge32: 0
>>>> IF-MIB::ifOutQLen.3 = Gauge32: 0
>>>> Error in packet.
>>>> Reason: (genError) A general failure occured
>>>> Failed object: IF-MIB::ifOutQLen.3
>>>>
>>>> # snmpwalk -v 2c -c public localhost IF-MIB::ifOutQLen.3
>>>> Error in packet.
>>>> Reason: (genError) A general failure occured
>>>> Failed object: IF-MIB::ifOutQLen.3
>>>>
>>>> My agent outputs this:
>>>> 20070202.22:25:53: 567: (1)ERROR  : MasterAgentXMib: invalid AgentX
>>>> response
>>>> (sd)(sid)(tid)(req-vbs)(resp-vbs): (15), (1), (96), (1), (0)
>>>>
>>>> I've tried using the plain master agent from the examples directory,
>>>> and
>>>> net-snmp 5.3.1 and 5.4 but the results are the same.

-- 
Johnny Ljunggren, Navtek AS




More information about the AGENTPP mailing list