Subject: RE: kern/7480: IP severely broken
To: tech-kern@netbsd. org <tech-kern@netbsd.org>
From: Martin Husemann <martin@rumolt.teuto.de>
List: tech-kern
Date: 05/01/1999 10:15:56
I did UTSL and found the culprit. Could you please sanity check this, maybe
even fix it completely, commit and request a pullup? I'd love to see 1.4
with working network ;-)


Martin


*** /sys/netinet/ip_input.c	Thu Apr  8 13:26:02 1999
--- netinet/ip_input.c	Sat May  1 10:07:56 1999
***************
*** 419,429 ****
--- 419,436 ----
  	/*
  	 * Check our list of addresses, to see if the packet is for us.
  	 */
  	INADDR_TO_IA(ip->ip_dst, ia);
  	if (ia != NULL) {
+ 		/*
+ 		 * XXX - this check is bogus!
+ 		 * we may have several interfaces with this address
+ 		 * and THIS particular down, the check must be done
+ 		 * in INADDR_TO_IA, which should not consider interfaces
+ 		 * without IFF_UP !!!
  		if (ia->ia_ifp->if_flags & IFF_UP)
+ 		 */
  			goto ours;
  	}
  	if (m->m_pkthdr.rcvif->if_flags & IFF_BROADCAST) {
  		for (ifa = m->m_pkthdr.rcvif->if_addrlist.tqh_first;
  		    ifa != NULL; ifa = ifa->ifa_list.tqe_next) {