Hi,

I got a problem after upgrading from Ucd-snmp 4.2.3 to Net-Snmp 5.4.2. Making an snmpgetnext on an empty tables makes the subagent first time-out the snmpgetnext command and then crash the subagent.
The empty tables worked fine in Ucd-Snmp 4.2.3 and also if the mib is compiled against the agent.

If I make a snmpgetnext on an empty table I get the following results:
(The debugmessages below are printed in the beginning of the function var_myTable)
(myMIB.2.4.2.2.1 is myTable.)

In Ucd-Snmp 4.2.3 with subagent
14:myMIB.c:757:snmphndl:INFO:name' .iso.3.6.1.4.1.myMIB.2.4.2.2.1'
15:myMIB.c:761:snmphndl:INFO:vp->name'.iso.3.6.1.4.1.myMIB.2.4.2.2.1.1.1'
16:myMIB.c:800:snmphndl:INFO:return NULL
17:myMIB.c:757:snmphndl:INFO:name' .iso.3.6.1.4.1.myMIB.2.4.2.2.1'
18:myMIB.c:761:snmphndl:INFO:vp->name'.iso.3.6.1.4.1.myMIB.2.4.2.2.1.1.2'
19:myMIB.c:800:snmphndl:INFO:return NULL

In Net-Snmp 5.4.2 with subagent
16:myMIB.c:1006:snmphndl:INFO:name '.1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1'
17:myMIB.c:1010:snmphndl:INFO:vp->name'.1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1'
18:myMIB.c:1058:snmphndl:INFO:return NULL
19:myMIB.c:1006:snmphndl:INFO:name '.1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1'
20:myMIB.c:1010:snmphndl:INFO:vp->name'.1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1'
21:myMIB.c:1058:snmphndl:INFO:return NULL

In Net-Snmp 5.4.2 and the myMIB built into the agent
myMIB: name = '.1.3.6.1.4.1.myMIB.2.4.2.2.1'
myMIB: vp->name = '.1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1'

Because name is different( myMIB.2.4.2.2.1 and myMIB.2.4.2.2.1.1.1) in 5.4.2 with subagent this tables runs forever. I guess the end of the tables isn't found due to this.
The problem only exists if myTable is empty(no rows at all).

I've also turned on -Dagentx and got the following debugmessages:
agentx/master: handle pdu (req=0x717755fa,trans=0x0,sess=0x7)
agentx/master: send response, stat 0 (req=0x717755fa,trans=0x0,sess=0x7)
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa1
agentx/master: request for variable (.1.3.6.1.4.1.myMIB.2.4.2.2.1)
agentx/master: inexact request preceeding region (.1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1)
agentx/master: INCLUSIVE varbind .1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1 scoped to .1.3.6.1.4.1.myMIB.2.4.2.2.1.1.2
agentx: sending pdu (req=0x61,trans=0x60,sess=0x7)
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa1
agentx/master: request for variable (.1.3.6.1.4.1.myMIB.2.4.2.2.1)
agentx/master: inexact request preceeding region (.1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1)
agentx/master: INCLUSIVE varbind .1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1 scoped to .1.3.6.1.4.1.myMIB.2.4.2.2.1.1.2
agentx: sending pdu (req=0x63,trans=0x62,sess=0x7)
agentx_build: packet built okay
agentx/master: got response errstat=0, (req=0x61,trans=0x60,sess=0x7)
agentx/master: agentx_got_response() beginning...
agentx/master: handle_agentx_response: processing: .1.3.6.1.4.1.myMIB.2.4.2.2.1.1.1
agentx/master: handle_agentx_response() finishing...

Is this a problem with agentx in the latest release or something else?

Regards,
Goran

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.p...r_id=100&url=/
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/...et-snmp-coders