From owner-cvs-src-old@FreeBSD.ORG Wed Dec 30 21:40:17 2009 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 39674106566C for ; Wed, 30 Dec 2009 21:40:17 +0000 (UTC) (envelope-from qingli@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 248648FC1C for ; Wed, 30 Dec 2009 21:40:17 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id nBULeHVC045529 for ; Wed, 30 Dec 2009 21:40:17 GMT (envelope-from qingli@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id nBULeH7q045528 for cvs-src-old@freebsd.org; Wed, 30 Dec 2009 21:40:17 GMT (envelope-from qingli@repoman.freebsd.org) Message-Id: <200912302140.nBULeH7q045528@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to qingli@repoman.freebsd.org using -f From: Qing Li Date: Wed, 30 Dec 2009 21:35:34 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/net if_llatbl.c if_llatbl.h if_var.h route.c route.h rtsock.c src/sys/netinet in.c src/sys/netinet6 in6.c src/usr.sbin/arp arp.c X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Dec 2009 21:40:17 -0000 qingli 2009-12-30 21:35:34 UTC FreeBSD src repository Modified files: sys/net if_llatbl.c if_llatbl.h if_var.h route.c route.h rtsock.c sys/netinet in.c sys/netinet6 in6.c usr.sbin/arp arp.c Log: SVN rev 201282 on 2009-12-30 21:35:34Z by qingli The proxy arp entries could not be added into the system over the IFF_POINTOPOINT link types. The reason was due to the routing entry returned from the kernel covering the remote end is of an interface type that does not support ARP. This patch fixes this problem by providing a hint to the kernel routing code, which indicates the prefix route instead of the PPP host route should be returned to the caller. Since a host route to the local end point is also added into the routing table, and there could be multiple such instantiations due to multiple PPP links can be created with the same local end IP address, this patch also fixes the loopback route installation failure problem observed prior to this patch. The reference count of loopback route to local end would be either incremented or decremented. The first instantiation would create the entry and the last removal would delete the route entry. MFC after: 5 days Revision Changes Path 1.15 +3 -1 src/sys/net/if_llatbl.c 1.6 +1 -1 src/sys/net/if_llatbl.h 1.161 +2 -0 src/sys/net/if_var.h 1.172 +1 -3 src/sys/net/route.c 1.87 +1 -0 src/sys/net/route.h 1.186 +22 -0 src/sys/net/rtsock.c 1.154 +44 -8 src/sys/netinet/in.c 1.130 +12 -4 src/sys/netinet6/in6.c 1.74 +35 -29 src/usr.sbin/arp/arp.c