Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Jun 1996 16:23:38 -0700
From:      "Jin Guojun[ITG]" <jin@george.lbl.gov>
To:        bugs@freebsd.org
Subject:   bug and fix in netinet/if_ether.c in 2.2-SNAP
Message-ID:  <199606172323.QAA24462@george.lbl.gov>

next in thread | raw e-mail | index | archive | help
A bug is found in function arpresolve() in netinet/if_ether.c.
It causes panic when doing ATM due to the (rt0 == NULL).
The following change is supposed for 2.2-SNAP, but it does not work
because struct  arpcom has been changed (no more ac_ipaddr member in arpcom).
Please let me know if there is another better way to fix it.

Thanks,

	-Jin

------------------------ Cut Here -------------------------------
*** netinet/if_ether.c  Sat Jun  8 01:18:56 1996
--- netinet/if_ether.c.fixed   Mon Jun 17 15:54:05 1996
***************
*** 364,371 ****
                if (la->la_asked == 0 || rt->rt_expire != time.tv_sec) {
                        rt->rt_expire = time.tv_sec;
                        if (la->la_asked++ < arp_maxtries)
!                           arprequest(ac,
!                               &(SIN(rt0->rt_ifa->ifa_addr)->sin_addr.s_addr),
                                &(SIN(dst)->sin_addr.s_addr),
                                ac->ac_enaddr);
                        else {
--- 364,372 ----
                if (la->la_asked == 0 || rt->rt_expire != time.tv_sec) {
                        rt->rt_expire = time.tv_sec;
                        if (la->la_asked++ < arp_maxtries)
!                           arprequest(ac, rt0 ? 
!                               &(SIN(rt0->rt_ifa->ifa_addr)->sin_addr.s_addr)
!                               : &ac->ac_ipaddr.s_addr,
                                &(SIN(dst)->sin_addr.s_addr),
                                ac->ac_enaddr);
                        else {
------------------------ Cut Here -------------------------------




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606172323.QAA24462>