I have an AgentX subagent (NetSnmp version 5.3.0.1) that represents one or
more printers, so it's registered for the 'printmib' oids using
netsnmp_create_handler_registration(). If a printer temporarily goes away,
I report 'SNMP_ERR_NOSUCHNAME' for its OIDs by calling
netsnmp_set_request_error(). I'm having a problem where
'handle_getnext_loop()' seems to get into a infinite loop if I do a
'snmpgetnext printmib' and report 'SNMP_ERR_NOSUCHNAME'. It keeps calling
my handler over and over with the same OID=1.3.6.1.2.1.43.5.1.1.1.1 (the
first registered OID in 'printmib'). Am I doing something wrong or is this
a NetSnmp bug.
Here's the relevent portion of the callstack.
#6 0x1008da74 in NetInstanceDevice::handler (handler=0x102ff6e0,
reginfo=0x102ffc58, reqinfo=0x102ed650, requests=0x102ed660)
at ../../../console/snmp/Instance.cpp:965
#7 0x0ffb4570 in netsnmp_call_handler () from
/usr/lib/libnetsnmpagent.so.10
#8 0x0ffb4890 in netsnmp_call_next_handler ()
from /usr/lib/libnetsnmpagent.so.10
#9 0x0fdee71c in netsnmp_instance_helper_handler ()
from /usr/lib/libnetsnmphelpers.so.10
#10 0x0ffb4570 in netsnmp_call_handler () from
/usr/lib/libnetsnmpagent.so.10
#11 0x0ffb4890 in netsnmp_call_next_handler ()
from /usr/lib/libnetsnmpagent.so.10
#12 0x0fdf5428 in netsnmp_serialize_helper_handler ()
from /usr/lib/libnetsnmphelpers.so.10
#13 0x0ffb4570 in netsnmp_call_handler () from
/usr/lib/libnetsnmpagent.so.10
#14 0x0ffb4ac0 in netsnmp_call_handlers () from
/usr/lib/libnetsnmpagent.so.10
#15 0x0ffa3dc0 in handle_var_requests () from
/usr/lib/libnetsnmpagent.so.10
#16 0x0ffa5330 in handle_getnext_loop () from
/usr/lib/libnetsnmpagent.so.10
#17 0x0ffa5c8c in handle_pdu () from /usr/lib/libnetsnmpagent.so.10
#18 0x0ffa6b38 in netsnmp_handle_request () from
/usr/lib/libnetsnmpagent.so.10
#19 0x0ffa79cc in handle_snmp_packet () from
/usr/lib/libnetsnmpagent.so.10
#20 0x0fd41c44 in snmpv3_parse () from /usr/lib/libnetsnmp.so.10
#21 0x0fd42b58 in _sess_read () from /usr/lib/libnetsnmp.so.10
#22 0x0fd43538 in snmp_sess_read () from /usr/lib/libnetsnmp.so.10
#23 0x0fd435ec in snmp_read () from /usr/lib/libnetsnmp.so.10
#24 0x0fd16a70 in snmp_synch_response_cb () from /usr/lib/libnetsnmp.so.10
#25 0x0ffcead4 in agentx_synch_response () from
/usr/lib/libnetsnmpagent.so.10
#26 0x0ffcebbc in agentx_send_ping () from /usr/lib/libnetsnmpagent.so.10
#27 0x0ffb89e4 in agentx_check_session () from
/usr/lib/libnetsnmpagent.so.10
#28 0x0fd67b44 in run_alarms () from /usr/lib/libnetsnmp.so.10
#29 0x0ffa835c in agent_check_and_process ()
from /usr/lib/libnetsnmpagent.so.10
#30 0x1007f1b8 in NetConnector::processPacket (this=0x1027b648)
at ../../../console/snmp/DaemonConnector.cpp:339
Lisa Morgan
InfoPrint Solutions Company
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders