From owner-cvs-src@FreeBSD.ORG Sat Sep 30 17:28:27 2006 Return-Path: X-Original-To: cvs-src@FreeBSD.org Delivered-To: cvs-src@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B53CD16A403; Sat, 30 Sep 2006 17:28:27 +0000 (UTC) (envelope-from jhay@meraka.csir.co.za) Received: from zibbi.meraka.csir.co.za (zibbi.meraka.csir.co.za [146.64.24.58]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5A4E043D4C; Sat, 30 Sep 2006 17:28:25 +0000 (GMT) (envelope-from jhay@meraka.csir.co.za) Received: by zibbi.meraka.csir.co.za (Postfix, from userid 3973) id 52ED833CA2; Sat, 30 Sep 2006 19:28:24 +0200 (SAST) Date: Sat, 30 Sep 2006 19:28:24 +0200 From: John Hay To: Hajimu UMEMOTO Message-ID: <20060930172824.GA61082@zibbi.meraka.csir.co.za> References: <200609301408.k8UE8vpM069161@repoman.freebsd.org> <20060930162039.GA59699@zibbi.meraka.csir.co.za> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.1i Cc: John Hay , src-committers@FreeBSD.org, cvs-all@FreeBSD.org, cvs-src@FreeBSD.org Subject: Re: cvs commit: src/sys/netinet6 nd6.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Sep 2006 17:28:27 -0000 On Sun, Oct 01, 2006 at 01:51:45AM +0900, Hajimu UMEMOTO wrote: > jhay> On Sat, Sep 30, 2006 at 11:33:35PM +0900, Hajimu UMEMOTO wrote: > > jhay> FreeBSD src repository > > > > jhay> Modified files: > > jhay> sys/netinet6 nd6.c > > jhay> Log: > > jhay> My previous commit broke "route add -inet6 -interface gif0". > > jhay> Fix that by excluding point-to-point interfaces. > > > > > - } else if (req == RTM_ADD && SDL(gate)->sdl_alen == 0) { > > > + } else if (req == RTM_ADD && SDL(gate)->sdl_alen == 0 && > > > + (ifp->if_flags & (IFF_POINTOPOINT | IFF_LOOPBACK)) == 0) { > > > ln->ln_state = ND6_LLINFO_INCOMPLETE; > > > > Umm, it seems still there is a problem. We are using -interface not > > only for point-to-point interface and loopback. > > I'm not sure but can we check `(rt->rt_flags & RTF_HOST) != 0', here? > > jhay> That would work better yes. Is there a reason you feel unsure about it? > jhay> Or is it just a case of not having tested it? > > Because, I was just unsure of your intention, and I'm not having > tested it. What I'm trying to do is to add a host route to a machine directly connected. It sounds stupid because you normally don't need it, but I'm busy porting net/olsrd to FreeBSD/IPv6. Currently it only have linux support. Olsrd is a mesh routing protocol used in adhoc wireless networks. The one reason you want to add these routes is because you might have more than one wireless interface on the same subnet, covering different areas. So you need to add a route to the interface that can talk to the host. So after some struggling and questions on freebsd-net, I came up with code that do the equivalent of: "route add -inet6 -interface -ifp -llinfo -nostatic" in olsrd and this patch. If there is an easier way, I would love to use it. John -- John Hay -- John.Hay@meraka.csir.co.za / jhay@FreeBSD.org