From owner-freebsd-hackers Thu Oct 16 17:30:51 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id RAA05214 for hackers-outgoing; Thu, 16 Oct 1997 17:30:51 -0700 (PDT) (envelope-from owner-freebsd-hackers) 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 RAA05209 for ; Thu, 16 Oct 1997 17:30:48 -0700 (PDT) (envelope-from julian@whistle.com) Received: (from daemon@localhost) by alpo.whistle.com (8.8.5/8.8.5) id RAA05115; Thu, 16 Oct 1997 17:30:08 -0700 (PDT) Received: from current1.whistle.com(207.76.205.22) via SMTP by alpo.whistle.com, id smtpd005102; Fri Oct 17 00:30:02 1997 Message-ID: <3446B138.42877E5C@whistle.com> Date: Thu, 16 Oct 1997 17:28:40 -0700 From: Julian Elischer Organization: Whistle Communications X-Mailer: Mozilla 3.0Gold (X11; I; FreeBSD 2.2-CURRENT i386) MIME-Version: 1.0 To: Darren Reed CC: hackers@freebsd.org Subject: Re: Freebsd 3.0 current fails ipfilter 3.2b8 build (fwd) References: <199710170000.KAA22494@plum.cyber.com.au> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Darren Reed wrote: > Well, I just had a look at net/if.h & net/if_var.h for -current and it > appears as if someone has really created a good ol' mess in there. > (Sort of inline with what the rumour mill is saying about FreeBSD > networking code...) ah fightin' words ;-) I'm bowing out, Iagree there's a mess there, but hopefully it's because it's in transition. > > In if.h, "struct ifnet" is gone, but if_var.h is included if KERNEL is > defined. However, all the #define's for the if_flags are still in if.h. I think that's because they are needed externally. the flags word is passed around independantly of the ifnet. (e.g. through the API) > If someone feels the need to change something, please ensure that the > structs from if_var.h get into if.h by if if.h is included, no matter > what. > > Cripes, not even Solaris2 is this brain dead. In the new inet include > directory, they have a similar sort of thing, but they did it right. > Some files contain just extern's whilst others contain structures and > externs. > > Might I suggest that this is the way to go ? I point the finger directly at garrett. If he says so it can happen. > > Structures defined in .h files, whilst maybe used in the kernel, are > not always used only in that fashion. If there are changes made to > them, then it should not harm user code if dependencies can be > correctly determined. we are trying to remove all extrernal references to such structures. > > Putting things into different .h files doesn't stop people from using > what you think are "kernel private" in other ways, it just makes them > angry and annoyed that something has changed (for no good reason) and > they now must deal with it. If something like the name for "loif" had > moved and changed, then you'd be quite right with the assertion of it > being "kernel private", etc. I think the problem is that you are seeing a half finished transition. But I understand your frustration. > > Darren