From owner-freebsd-hackers Tue Aug 26 17:30:35 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id RAA20178 for hackers-outgoing; Tue, 26 Aug 1997 17:30:35 -0700 (PDT) Received: from alpo.whistle.com (alpo.whistle.com [207.76.204.38]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id RAA20173 for ; Tue, 26 Aug 1997 17:30:30 -0700 (PDT) Received: (from daemon@localhost) by alpo.whistle.com (8.8.5/8.8.5) id RAA23791 for ; Tue, 26 Aug 1997 17:21:06 -0700 (PDT) Received: from current1.whistle.com(207.76.205.22) via SMTP by alpo.whistle.com, id smtpd023769; Wed Aug 27 00:20:59 1997 Message-ID: <340372DF.695678E2@whistle.com> Date: Tue, 26 Aug 1997 17:20:47 -0700 From: Julian Elischer Organization: Whistle Communications X-Mailer: Mozilla 3.0Gold (X11; I; FreeBSD 2.2-CURRENT i386) MIME-Version: 1.0 To: hackers@freebsd.org Subject: review please.. Networking change. Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Here is a change to the general networking, and a change to the appletalk networking. The general change is to add a callout hook that a protocol can use to make sure it is called when a decision needs to be made as to whether an address is attached to a prticular interface or not. This is needed because the current method is to use netmaks, but netmasks do not suffice for some protocols, e.g. appletalk. the cost to general netowrking is the addition of a 4 byte field to the ifaddr structure, and a test for the presence of this field in the generic function ifa_ifwuthnet(). If the callout is valid, then it is called instead of the generic netmask based code. The only issue I have with this code is, that it might be better to allow the protocols to specify a more generally useful function, ONE sub-function of which would be to do this comparison, however I cannot clearly identify other uses for this function, so I decided to make it specific for now. (by "more general", I mean to have multiple actions in the same way that rtrequest() does.) If I don't get any objections I will check these changes into -current and after a brief wait, into the 2.2 tree. Without this, the appletalk code has no chance of working correctly with a appletalk network that includes routed components. (which is usually just about any large appletalk installation). I fyou have objections please let me know relatively quickly as I would like ot check it in tomorrow.(Wed) julian