On Wed, 15 Feb 2006 10:28:18 +0000 Dave wrote:
DS> On Tue, 2006-02-14 at 12:44 -0500, Robert Story wrote:
DS> > The patch fixes both cases.
DS> 
DS> Ummm...
DS> I've had a quick look at the patch, but I'm not totally clear on
DS> exactly how it works and what the implications are.   (I'm still
DS> slightly under the weather from last weekend, I think).

Ok... a little more detail.

DS> > - override handler works *after* the fact. original handler is called and
DS> > returns data.

As you surmised, I didn't look into this. Well, I did come up with a fix, but
is relied on the request vb oid matching the tree range end oid - 1, which
worked for these particular cases, but certainly wouldn't work for lots of
others.

DS> > - bulk_to_next handler advances to next variable if data was returned.
DS> > didn't check if data was out of range.

The patch adds range checks to the bulk to next handler before it advances the
vb pointer in the request.

DS> > - check_getnext_results noticed the override after the fact, set type to
DS> > retry, and set the inclusive flag.
DS> > 
DS> > - bulk_to_next uses 1 request obj w/multiple varbinds. once the
DS> > inclusive flag is set by check_get_next_results, it's never cleared.

The patch sets inclusive to 2, instead of 1, in check getnext results. The
bulk to next handler looks for a value of 2, and clears it if set. This may
break things if the inclusive flag was previously set to 1 for some reason.
This is my primary concern.

DS> >  The only part that I'm a little worried about is
DS> > the inclusive flag changes.
DS> 
DS> The thing that I'm a little worried about is the mention in "note.txt"
DS> about "the wrong handler chain .. being set up initially".   I'm not
DS> sure if your patch addresses that, but it would seem to warrent further
DS> investigation.

For scalars, we can probably fix it. Don't think we can do anything about table
instances though. Not without support from the module's handler routine.

DS> How exactly are you setting the agent up to trigger this problem?

The original problem report has the setup for sysDecr. I also used Radek's
setup:

        override 1.3.6.1.2.1.25.2.3.1.3.6 null

Depending on your disk setup, you might need to tweak the index to match an
existing index.

BTW, the patch was checked in for 5.1.4.pre3, since it fixes known breakage.
So we have a week or so before pre4/rc1 to find a better solution, or breakage
in the existing solution...

-- 
Robert Story; NET-SNMP Junkie
Support: <http://www.net-snmp.org/> <irc://irc.freenode.net/#net-snmp>
Archive: <http://sourceforge.net/mailarchive/forum.php?forum=net-snmp-coders>

You are lost in a twisty maze of little standards, all different. 


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to