Otherwise, system util.h is not included when compiling ifconfig.c, the
snprintb prototype is missing, and the flags don't get printed correctly
on hp700.
Don't access address 0 and core dump when it does!
Fixes sysinst, the install ramdiskbin gets built against the standard
archive libraries (at least on amd64) which are build with HAVE_WCHAR.
various address families (inet, inet6, iso, atalk) and protocols
(802.11, 802.3ad, CARP), simply by trimming the list of sources in
the Makefile. This helps one customize ifconfig for an embedded
device or for install media, and it eliminates a lot of grotty
#ifdef'age. Now, the ifconfig syntax and semantics are finalized
at run-time using the constructor routines in each address-family/protocol
module.
(In principle, ifconfig could load virtually all of its syntax from
shared objects.)
Extract a lot of common code into subroutines, in order to shrink
the ifconfig binary a bit. Make all of the address families share
code for address addition/replacement/removal, and delete "legacy"
code for manipulating addresses. That may have broken atalk and
iso, despite my best efforts.
Extract an include file, Makefile.inc, containing the make-fu that
both ifconfig and x_ifconfig share.
Sprinkle static. Change some int's to bool's. Constify.
Add RCS Ids to carp.c and env.c. Move media code to a new file,
media.c. Delete several unneeded header files.
Set, reset, and display the IEEE 802.11 attribute, 'dot11RTSThreshold'.
Bug fix: do not require both a interface address and a destination
address for point-to-point interfaces, but accept a interface
address by itself.
(1) By moving the "Choose your partition" menu up one line, we gain two
lines, since the scroll... message is gone.
(2) With the mac68k MAXPARTITIONS == 8, we only need 7 lines for the
partition table, which does not display the 'c' partition.
After both changes, the display fits nicely on an 80x24 screen even
for a full partition table. Should mac68k want to bump MAXPARTITIONS,
though, the partition table needs to be scrollable.
label looks like an autogenerated "whole disk" label, make sure that
we adjust the 'a' partition when we create an MBR that does not start
right at the start of the disk. Also when we force this partition to be
mounted, init it's mount point to / and force a newfs.
improved modularity and extensibility.
In the new architecture, a directed graph of argument-matching
objects (match objects) expresses the set of feasible ifconfig
statements. Match objects are labelled by subroutines that provide
the statement semantics.
Many IPv4, IPv6, 802.11, tunnel, and media configurations have been
tested.
AppleTalk, ISO, carp(4), agr(4), and vlan(4) configuration need
testing.
- Make MULTIPROCESSOR mandatory on i386.
Installation changes:
- Update installation section of release notes to match reality.
- Rename INSTALL to INSTALL_FLOPPY, retire INSTALL_LARGE.
- Build INSTALL kernel from GENERIC, like on amd64.
- Update boot menu to allow disabling ACPI and/or SMP.
- Remove GENERIC.NOACPI from the installed kernel list.
- TODO: install default boot.cfg in etc.tgz.
- TODO: possibly enable PCI fixup stuff at runtime if ACPI is disabled.
Build changes:
- No longer build ALL, it's for verification, is slow to build and the
build process is already crippled by the number of kernels built.
- No longer build GENERIC.NOACPI.
chose manual, the generated rc.conf has dhclient details instead
of defaultroute. (Noticed this when dhclient ran successfully,
but network failed so I entered network settings manually.)
Now only defines dhclient rc.conf variables when DHCP is used
else defines the defaultroute.
install time. Translations will need to be adjusted - I didn't feel
comfortable touching anything but .en and .de despite the relatively
simple adjustment...
at the end of `init_set_status'.
Previously, i386/amd64, mac68k and sgimips were using `md_init' to set the
appropriate kernel, but any changes made were being undone by a later call
to `init_set_status'.
This should fix IP3x installation issues on sgimips.
XXX - `md_init' is now unused. Should we G/C it?
all static. This makes it possible to write a md_make_bsd_partitions()
function without having to copy all of bsddisklabel.c into md.c.
Make ofppc sysinst install sanely and in a bootable manner on both my
7044, and my pegasos. The only thing the user needs to do is pick the
right kernel set.
with a suitable ramdisk etc, you can actually install successfully.
mostly the changes from port-prep are to switch the prep mkbootimage
to an msdos boot partition with a copy of ofwboot in it.
not use real locales, but this at least allows single byte character
locales to work as expected (i.e. the existing translations for sysinst).
Once we get a sysinst translation that needs more, we'll have to drop this
and the castrated setlocale(), and go for a real solution.