[ net-snmp-Bugs-1552021 ] AGENTX consumes select()ed event in

This is a discussion on [ net-snmp-Bugs-1552021 ] AGENTX consumes select()ed event in within the SNMP Coders forums, part of the Networking and Network Related category; Hi, I wrote up a "bug" under AGENTX for this. My system: RH ES3 Net-SNMP 5.2....


Go Back   Usenet Forums > Networking and Network Related > SNMP Coders

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 09-04-2006
Olsson, Sten
 
Posts: n/a
Default [ net-snmp-Bugs-1552021 ] AGENTX consumes select()ed event in

Hi,

I wrote up a "bug" under AGENTX for this.
My system:
RH ES3
Net-SNMP 5.2.1

The abbreviated problem description:
I have seen cases recently where my application where I manage the FDs
(by first getting FDs from NET-SNMP via snmp_select_info()) will select
events on 2 FDs. The first event will cause me to call snmp_timeout()
and run_alarms() to check to timeouts or something to do as an alarm.
This event will cause AGENTX to send a ping which it expects a
synchronous response. It will select on the SNMP file descriptors on
its own and read from one that is active. The problem is that this
first event causes the second event to be consumed but inside the first
event instead of the second. Then when the second event is processed,
there is nothing to read from the FD anymore (first event stole it) and
now the application hangs on recv().

This all happens because the first event (that runs run_alarms() and
agentx ping) calls send(), select(), and recv() all in the same function
call (agentx_synch_response()).

It seems to me that it shouldn't be calling select() or recv(). I
realize it was designed to do this, but it seems wrong to do this. The
send() would be OK, but then the code should wait for until the FD
manager (which may be the user's application) select()s "read" to
process the response to the send().

I guess I would like to understand if the AGENTX protocol really
requires an synchronous response or if waiting for the response
asynchronously would be OK as well. Obviously to make this happen there
would be code changes required, but I guess I would like to understand
if it is even feasible or if this is even thought of as a "bug". I
think it is working as designed, but the design limits the users ability
to make an asynchronous application using NET-SNMP and as I found can
cause a hang condition.

More detail in the bug report.

Sten

Sten J. Olsson
Software Engineer
Lockheed Martin TSS
9211 Corporate Blvd. Bldg. 870/2F05
Rockville, MD 20850


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=...057&dat=121642
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/...et-snmp-coders
Reply With Quote
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are Off
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT +1. The time now is 09:45 AM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.0.0