Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Sep 2003 10:30:33 -0700
From:      Brooks Davis <brooks@one-eyed-alien.net>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        net@FreeBSD.org
Subject:   Re: finishing the if.h/if_var.h split
Message-ID:  <20030930173033.GB31908@Odin.AC.HMC.Edu>
In-Reply-To: <XFMail.20030930131434.jhb@FreeBSD.org>
References:  <20031001011119.U1245@gamplex.bde.org> <XFMail.20030930131434.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Fba/0zbH8Xs+Fj9o
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Sep 30, 2003 at 01:14:34PM -0400, John Baldwin wrote:
>=20
> On 30-Sep-2003 Bruce Evans wrote:
> > On Tue, 30 Sep 2003, John Baldwin wrote:
> >=20
> >> On 30-Sep-2003 Bruce Evans wrote:
> >> > On Mon, 29 Sep 2003, Brooks Davis wrote:
> >> >> Unfortunately, "soon" hasn't happened yet and it is now tripping me
> >> >> up.  To add the if_dev member to struct ifnet (see the forthcoming
> >> >> post on that subject), it is necessary for sys/bus.h to be included=
 in
> >> >> net/if_var.h
> >> >
> >> > That would be namespace pollution, so it is not permitted :-).  Requ=
iring
> >> > all files that include <sys/if_var.h> (and especially <sys/if.h> to
> >> > include <sys/bus.h> would be interface breakage so it is even less
> >> > permitted.
> >>
> >> Well, if if.h stops including if_var.h, then only kernel files that
> >> include net/if_var.h would need sys/bus.h.  I think that's manageable.
> >=20
> > All userland files that include net/if_var.h would also need it (except
> > they would only need device_t).
>=20
> Is struct ifnet exposed to userland?  Ugh, why do we export such things?
> I guess because ifconfig grovels around in the kernel due to a lack of
> APIs between the kernel and userland.  *sigh*

ifconfig is actually OK, it uses sysctl.  netstat and ifmcstat do go
grovling around in there as do 4-5 ports.  If someone fixed our userland
that would provide the template to fix the ports since they are all just
netstat in some form or another.

-- Brooks

--=20
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

--Fba/0zbH8Xs+Fj9o
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE/eb20XY6L6fI4GtQRApTwAJ0ZGFspAr0NJYMOOCghsYurtntxlACeKILY
4kch6VFEGstPNOfkb/ZFr38=
=jHza
-----END PGP SIGNATURE-----

--Fba/0zbH8Xs+Fj9o--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030930173033.GB31908>