Re: clientAddr ipv6

Pushpa Thimmaiah <[email protected]>
Newsgroups gmane.network.net-snmp.devel
Message-ID <CAASqVJU_Qq30cLsOV27vOn=UB969j1Eu6G96=OBHFBH3GeZBNQ__38999.6518534192$1540873977$gmane$org@mail.gmail.com>
Hi Bart,

Thank you.  I  will verify. Does the patch works for IPv6 too?

Regards,
Pushpa. T



On Tue, Oct 30, 2018 at 4:27 AM Bart Van Assche <[email protected]> wrote:

> On Mon, 2018-10-29 at 09:52 +0530, Pushpa Thimmaiah wrote:
>
> Hi All,
> I am using option 'clientAddr'  with IPv6 address and noticed that it is
> not working.
> so I applied patch
> https://sourceforge.net/p/net-snmp/mailman/message/33064273/ on 5.7.3 but
> It seems not working.
> Kindly let me know if I am missing any configurations.
>
> Eg:
> linux machine has ipv6 '2002::2054' and sends trap using
> 'clientAddr=2002::2056'
> There is no IPv6 '2002::2056' and trap sent out via '2002::2054'.  I have
> expected it to fail when it doesnot find 2002::2056.
>
> *snmp trap sender:*
> /home/# /tmp/snmptrap -Dall -v 3 *--clientAddr="2002::2056"* -n "" -u
> testigmv6 -l authNoPriv -a MD5 -A mypassword -e 0x80001f880300b0a
> e123548  udp6:[2002::2045]:162 "" .1.3.6.1.4.1.8072.2.3.1
> .1.3.6.1.4.1.8072.2.1.1 i 444
> /home#
>
> *Trap Receiver shows:*
> usm: USM processing begun...
> usm: match on user testigmv6
> usm: Verification succeeded.
> usm: USM processing completed.
> 2018-10-29 09:43:59 UDP/IPv6: [2002::2054]:50455 [UDP/IPv6: [*2002::2054*
> ]:50455]:
> DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (89119) 0:14:51.19
> SNMPv2-MIB::snmpTrapOID.0 = OID:
> NET-SNMP-EXAMPLES-MIB::netSnmpExampleNotification
> NET-SNMP-EXAMPLES-MIB::netSnmpExampleInteger = INTEGER: 444
>
>
> Please retest with the Net-SNMP master branch. That branch includes the
> patch shown below.
>
> $ git branch --contains cc45578c2fa0b94f776
>
> * master
>
> $ git show cc45578c2fa0b94f776
>
> commit cc45578c2fa0b94f7762057ee3b8a0b795c497ff
>
> Author: Bill Fenner <[email protected]>
>
> Date:   Sun May 6 13:05:55 2018 +0000
>
>
>     snmpd: BUG: 2864: use clientaddr properly
>
>         The code parsed out the address from the clientaddr spec,
>
>     then used the return value wrong and only respected it
>
>     if it existed but didn't parse properly.
>
>
> diff --git a/snmplib/transports/snmpUDPIPv4BaseDomain.c b/snmplib/transports/snmpUDPIPv4BaseDomain.c
>
> index 37d8e33b47c7..433eb809bb91 100644
>
> --- a/snmplib/transports/snmpUDPIPv4BaseDomain.c
>
> +++ b/snmplib/transports/snmpUDPIPv4BaseDomain.c
>
> @@ -367,7 +367,7 @@ netsnmp_udpipv4base_transport(const struct sockaddr_in *addr, int local)
>
>              rc = netsnmp_sockaddr_in2(&client_addr, client_socket, NULL);
>
>              if (client_address != client_socket)
>
>                  free(client_address);
>
> -            if(!rc) {
>
> +            if(rc) {
>
>                  if (!uses_port || !have_port) /* if port isn't from string, */
>
>                      client_addr.sin_port = 0; /* ... clear it */
>
>                  return netsnmp_udpipv4base_transport_with_source(addr, local,
>
>
> Thanks,
>
> Bart.
>
>

_______________________________________________
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.