On 11/27/2012 09:03 AM, Claudio Jeker wrote:
On Mon, Nov 26, 2012 at 05:36:20PM -0700, Theo de Raadt wrote:
If there are desires to improve this (I hear Naddy grumbling!) then the
stomach to break backwards compat must be present, or suggestions on how
to do it without breaking backwards compat must be suggested.
My suggestion is two-fold:

* Introduce a new format.  This new format will ignore # comments,
  call ! commands, but otherwise pass on everything unchanged to
  ifconfig.  I'm neutral on the matter of retaining "dhcp" and
  "rtsol" as shortcuts for "!dhclient \$if" and "!rtsol \$if".

* To maintain backward compatibility, retain the old parsing for
  hostname.* files.  Interface configuration files in the new format
  will have a different name; if.* or whatever.

Does that sound workable?
Not really.  The netbsd experiment with ifconfig file format does
not appear to have been a success.

reason why? ifconfig has a really crummy argument parser, with all
sorts of side effects. hostname.* files were supposed to isolate
people from some of those nasty effects.

stated simply, it would not have helped Paul.  He would have made
the same mistake.

Plus some interface changes need multiple ifconfig commands and a specific
order to work. I think there is no way to express complex interface
configurations without having an order in which the operations are done.
Sure it is possible to throw the ordering all into netstart but I think
that is not helpful.

hostname.if is exactly what I dislike in all OpenBSD. I think the whole concept of it is leading to errors and misunderstanding. The very design is flawed. What I do right after the first boot is:
mv /etc/netstart /etc/netstart.dist
rm -f /etc/hostname.*
and then vi /etc/netstart, inserting the plain ifconfigs, routes, call of clients etc.
that way i have full control over network configuration.

Reply via email to