My apologies if this has been discussed before, but I couldn't find it
in a quick search of the archives.
I am trying to build the sub-agent example on the NetSNMP Wiki on a
Win32 system. I am currently using the NetSNMP v5.5 binary distribution
for Win32.
After some judicious searching and debugging, I was able to determine
that I had to add a line to the example-daemon.c file to specify where
the subagent should contact the master agent:
netsnmp_ds_set_string(NETSNMP_DS_APPLICATION_ID,
NETSNMP_DS_AGENT_X_SOCKET, "tcp:localhost:705");
After which I started getting timeouts, instead of no OID, when
attempting to pull down the example variable:
C:\My_Data\Visual Studio 2008\Projects\AuxP_App\SNMPTest>snmpget -v 2c
-c public
localhost NET-SNMP-TUTORIAL-MIB::nstAgentSubagentObject.0
Timeout: No Response from localhost.
I turned on some debugging, and it looks like the sub-agent is receiving
the GET request, but is never responding. Does anyone have any idea why
the default handler might not be returning anything? I'd rather use the
default handler if I can, but I'll write my own if necessary. Here are
the debug printouts from the run:
Master agent:
C:\Documents and Settings\vandyev>snmpd -f -Le -Dagentx
registered debug token agentx, 1
agentx_register_app_config_handler: registering .conf token for
"agentxsocket"
agentx_register_app_config_handler: registering .conf token for
"agentxperms"
agentx_register_app_config_handler: registering .conf token for
"agentxRetries"
agentx_register_app_config_handler: registering .conf token for
"agentxTimeout"
Turning on AgentX master support.
agentx/master: initializing...
agentx/master: initializing... DONE
NET-SNMP version 5.5
agentx/master: unexpected callback op 4
agentx/master: handle pdu (req=0x4702,trans=0x0,sess=0x0)
agentx/master: open 00A9CDC8
agentx/master: opened 00A9B090 = 4 with flags = a0
agentx/master: send response, stat 0 (req=0x4702,trans=0x0,sess=0x0)
agentx_build: packet built okay
agentx/master: handle pdu (req=0x4703,trans=0x0,sess=0x4)
agentx/master: in register_agentx_list
agentx/master: registered ok
agentx/master: send response, stat 0 (req=0x4703,trans=0x0,sess=0x4)
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa0
agentx/master: request for variable (NET-SNMP-MIB::netSnmp.2.4.1.1.2.0)
agentx: sending pdu (req=0x2,trans=0x1,sess=0x4)
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa0
agentx/master: request for variable (NET-SNMP-MIB::netSnmp.2.4.1.1.2.0)
agentx: sending pdu (req=0x4,trans=0x3,sess=0x4)
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa0
agentx/master: request for variable (NET-SNMP-MIB::netSnmp.2.4.1.1.2.0)
agentx: sending pdu (req=0x6,trans=0x5,sess=0x4)
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa0
agentx/master: request for variable (NET-SNMP-MIB::netSnmp.2.4.1.1.2.0)
agentx: sending pdu (req=0x8,trans=0x7,sess=0x4)
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa0
agentx/master: request for variable (NET-SNMP-MIB::netSnmp.2.4.1.1.2.0)
agentx: sending pdu (req=0xa,trans=0x9,sess=0x4)
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx/master: agentx master handler starting, mode = 0xa0
agentx/master: request for variable (NET-SNMP-MIB::netSnmp.2.4.1.1.2.0)
agentx: sending pdu (req=0xc,trans=0xb,sess=0x4)
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx_build: packet built okay
agentx/master: timeout on session 00A9CDC8
agentx/master: close 00A9CDC8, -1
agentx/master: close transport
Subagent:
No log handling enabled - turning on stderr logging
registered debug token nstAgentSubagentObject, 1
registered debug token snmp_alarm, 1
registered debug token agentx, 1
agentx_register_app_config_handler: registering .conf token for
"agentxsocket"
agentx/subagent: initializing....
agentx/subagent: subagent_init sess 003B8E78
agentx/subagent: initializing.... DONE
nstAgentSubagentObject: Initializing the nstAgentSubagentObject module
nstAgentSubagentObject: Initalizing nstAgentSubagentObject scalar
integer. Defa
ult value = 2
nstAgentSubagentObject: Done initalizing nstAgentSubagentObject module
agentx/subagent: connecting to master...
agentx/subagent: agentx_reopen_session(0) called
agentx/subagent: opening session...
agentx/subagent: opening session
agentx_build: packet built okay
agentx/subagent: synching input, op 0x01
agentx/subagent: open
agentx/subagent: trap session registered OK
agentx/subagent: registering callbacks for session 00A315E8
NET-SNMP version 5.5 AgentX subagent connected
agentx/subagent: opening session... DONE (00A315E8)
agentx/subagent: registering: NET-SNMP-MIB::netSnmp.2.4.1.1.2.0
agentx_build: packet built okay
agentx/subagent: synching input, op 0x01
agentx/subagent: registered
agentx/subagent: register ping alarm every 15 seconds
snmp_alarm: registered alarm 1, t = 15.000, flags=0x01
snmp_alarm: no alarms found to schedule
example-demon is up and running.
agentx/subagent: handling agentx request (req=0x2,trans=0x1,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x4,trans=0x3,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x2,trans=0x1,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x6,trans=0x5,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x4,trans=0x3,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x2,trans=0x1,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x8,trans=0x7,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x4,trans=0x3,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x6,trans=0x5,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x2,trans=0x1,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0xa,trans=0x9,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x8,trans=0x7,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x4,trans=0x3,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x6,trans=0x5,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x2,trans=0x1,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0xc,trans=0xb,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x8,trans=0x7,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0xa,trans=0x9,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x4,trans=0x3,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x6,trans=0x5,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x2,trans=0x1,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0xc,trans=0xb,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x8,trans=0x7,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0xa,trans=0x9,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x4,trans=0x3,sess=0x4)
agentx/subagent: -> get
agentx/subagent: handling agentx request (req=0x6,trans=0x5,sess=0x4)
agentx/subagent: -> get
agentx/subagent: transport disconnect indication
Thanks.
--Evan
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Net-snmp-users mailing list
Net-snmp-users@lists.sourceforge.net
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users