Re: RFC: "-@" command line argument to set clientaddr per request/session

Bill Fenner <[email protected]>
Newsgroups gmane.network.net-snmp.devel
Message-ID <CAF4SogaJ_AptW_bpviZuRDZWB3WsMy1DCNjpuhzo==F7yQCNsA@mail.gmail.com>
On Fri, May 4, 2018 at 5:10 PM, Robert Story <[email protected]> wrote:

> On Fri, 4 May 2018 11:40:21 -0400 Bill wrote:
> BF> I apologize for mis-speaking.  I meant, session.localname,
> BF> which is used in _sess_open() as follows:
> BF>
> BF> https://sourceforge.net/p/net-snmp/code/ci/master/tree/
> snmplib/snmp_api.c#l1629
>
> Ok, thanks for the pointer. So right now the only use of localname
> appears to be from netsnmp_create_v1v2_notification_session().
>

I hadn't actually looked at where else it had been used - just at the fact
that it appeared in the API and had the desired effect.

I think feature parity is a good thing. How close are you to having
> this patch ready? I'd say create a branch for it and push it to teh
> SF or github repo. Seeing the actual patch will help me form my
> opinion on rc1 (maybe if you're quick), 5.8.1 (seams reasonable,
> but does it change any existing ABI?), or 5.9.
>

The patch:
https://github.com/fenner/net-snmp/commit/28144b2831ab544ea9e63e2b9585d1f1d58422ad
A couple of trivial lines in snmp_parse_args, plus an exact replica of the
code from _sess_open in agent_trap.c.
(Both this code and the code in _sess_open could be made simpler by using
the new struct-based transport interface, since that allows specifying a
source address in that API, but
a) it's too close to the release for a change like this;
b) I think that API is why the trap*sink stuff is broken anyway
)
The only difference between this patch and the one that we've been using
for years is the use of "s" instead of "@" for the argument character,
since that's what the trap*sink parser uses.

The tests:
https://github.com/fenner/net-snmp/commit/41be11b4e3ab93cda376bf044de2f77534b56518
(T180 and T181 fail. T181 is testing the new functionality in 5.8, so, no
biggie.  T180 tests functionality that worked in 5.7.3.  T182 and T183
pass; this maybe makes the other failures less bad since if a user wants
this behavior they can configure the session using trapsess instead of
trap*sink).
(I think the "myip" perl script belongs in support, not in
fulltests/default/; I'll move it before i commit to the master branch.)

The bugfix:
T182 fails without
https://github.com/fenner/net-snmp/commit/f714d0a7790c477f63e5f56f65a922c0c460432a

These tests all need IPv6 versions, too.  And the bug2864 fix needs an IPv6
variant.

  Bill

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot

_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.