Subject: Re: IP Firewalling and IP Filetering
To: Darren Reed <email@example.com>
From: Greg A. Woods <firstname.lastname@example.org>
Date: 06/13/1996 14:38:39
[ On Wed, June 12, 1996 at 22:27:58 (+1000), Darren Reed wrote: ]
> Subject: Re: IP Firewalling and IP Filetering
> What about programs which run under SunOS4.1.x and assume a few things
> about network names, etc. Why break compatibility for the sake of
> change ? (Although Jason mentioned that the code is now less complex
> and faster, I doubt that the change will have significant impact from
> a system perspective for performance). It just makes the job of those
> not in core and who can't sup nightly that much harder and NetBSD less
> attractive as a target platform.
> Maybe programs that grovel /dev/kmem deserve all they get, but I'd hope
> they only have to change when there is worthwhile change.
I agree 101%
However I'm also somewhat disconcerted with what seems to be a
gratuitious difference between struct ifnet and struct ifreq in this
respect (i.e. in particul the disparity between if_name and if_unit in
one, and only ifr_name in the other). I understand the need for
IFNAMSIZ and the fixed size of the field in struct ifreq, but I'm
wondering why ifr_unit wasn't kept in struct ifreq, thus keeping
ifr_name identical to if_name (within the limit of IFNAMSIZ).
Of course now, because of the stronger requirement for compatability of
user-land code, struct ifreq has precedence, so perhaps merging if_name
and if_unit in struct ifnet is the best solution.
It would be nice if there were some definition, and subsequent checking,
perhaps in config(8), to ensure the device name never contains digits,
and thus it would be possible to reliably derive the unit number by
doing the equivalent of atoi(ifr_name + strcspn(ifr_name, "0123456789")).
Greg A. Woods
+1 416 443-1734 VE3TCP robohack!woods
Planix, Inc. <email@example.com>; Secrets Of The Weird <firstname.lastname@example.org>