From owner-freebsd-hackers Wed Aug 14 11:25:26 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id LAA19021 for hackers-outgoing; Wed, 14 Aug 1996 11:25:26 -0700 (PDT) Received: from whistle.com (s205m131.whistle.com [207.76.205.131]) by freefall.freebsd.org (8.7.5/8.7.3) with ESMTP id LAA19015 for ; Wed, 14 Aug 1996 11:25:24 -0700 (PDT) Received: (from smap@localhost) by whistle.com (8.7.5/8.6.12) id LAA14277; Wed, 14 Aug 1996 11:24:45 -0700 (PDT) Received: from current1.whistle.com(207.76.205.22) by whistle.com via smap (V1.3) id sma014275; Wed Aug 14 11:24:18 1996 Message-ID: <321219A2.63DECDAD@whistle.com> Date: Wed, 14 Aug 1996 11:23:30 -0700 From: Julian Elischer Organization: Whistle Communications X-Mailer: Mozilla 3.0b4 (X11; I; FreeBSD 2.2-CURRENT i386) MIME-Version: 1.0 To: Garrett Wollman CC: Julian@whistle.com, Elischer@whistle.com, archie@whistle.com, hackers@freefall.freebsd.org Subject: Re: cvs commit: src/sbin/route keywords route.8 route.c References: <199608132220.PAA16569@freefall.freebsd.org> <9608141629.AA29997@halloran-eldar.lcs.mit.edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Garrett Wollman wrote: > > < said: > > > julian 96/08/13 15:20:22 > > Modified: sbin/route keywords route.8 route.c > > Log: > > Submitted by: Archie@whistle.com > > if making a interface route, and it's a P2P link, > > then also automatically lable it as an llinfo entry so that > > gated and friends don't clobber it.. > > No, wrong. IFF_LLINFO means that rt->rt_llinfo points to something > useful. Back this out. Not by my reading of the code.. the way I read it, the RTF_LLINFO (not IFF_LLINFO) simply says that it is "generated by ARP or ESIS" (as the .h file indicates.. I genmeralise that to "created by some module that knows about the linklevel of that interface" Now, it is upto whoever generated it to know what is in the rt_llinfo field.. it is defined as a caddr_t for this reason (should be a A(void *)) All cases of code that I have seen look first to see that this is NOT a NULL before dereferencing it. I put it to you that the NULLNESS of the pointer indicates that there is nothing there, and that the llinfo says that it is a link level routing entry and nothing more. By my reading of the code and the stevend book your definition is not correct. A compromise would be to make the user manually set the llinfo bit, but we are only setting it automatically in the case where not setting it makes no sense. We are not setting it unless the user is setting a interface level routing entry to a P2P link, in which case there is no llinfo anyhow. I'm not saying that we can't be convinced, but that the argument you have just given isn't the one to convince us.. > -GAWollman > > -- > Garrett A. Wollman | O Siem / We are all family / O Siem / We're all the same > wollman@lcs.mit.edu | O Siem / The fires of freedom > Opinions not those of| Dance in the burning flame > MIT, LCS, ANA, or NSA| - Susan Aglukark and Chad Irschick