History log of /freebsd-9.3-release/usr.sbin/sade/sade.h
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 178946 11-May-2008 obrien

Better to just statically set the name vs. determine at run time.


# 161120 09-Aug-2006 netchild

Remove the keymap stuff too, it is not needed in sade.


# 161115 09-Aug-2006 netchild

Get rid of the rtermcap stuff (embedding termcaps into the program). This
is needed in sysinstall on boot, but not in sade on a fully working system.

After this change I noticed no change in behavior on a vty when TERM is not
set.


# 161100 08-Aug-2006 delphij

Partitions are only meaningful for i386 and amd64 architectures, so disable
these code on other architectures.


# 161099 08-Aug-2006 delphij

Make sade(8) WARNS=3 clean.


# 161060 07-Aug-2006 netchild

Say welcome to 'sade', the SysAdmins Disk Editor. It's the fdisk and disklabel part
of sysinstall. So sysinstall may retire now, we have the important non-install part
of it covered.

ATM it doesn't understand GEOM stuff (like mirror, stripe, raid, ...), but patches
to change this and to clean it up internally are more than welcome.

Submitted by: mami@nyitolap.hu


# 161059 07-Aug-2006 netchild

Forced commit to note repo copy from sysinstall.

Repo copy by: markm


# 158408 10-May-2006 jhb

Alpha doesn't support linux ABI compat now.


# 156436 08-Mar-2006 sam

Revamp base system packaging of kernels to enable up/smp selection
at runtime and to support distributing additional kernels:
o remove kernel from the base tarball
o add new kernel tarballs
o build + package both SMP and GENERIC kernels when an <arch>/conf/SMP
config file is present
o add sysinstall support for multiple kernels
o update sysinstall to probe for the number of cpus on a system
and auto-select smp/up kernel accordingly
o add a post-kernels install hook to fixup /boot/kernel
o add -ldevinfo to boot crunch for sysinstall's cpu probing logic

Notes:
1. On HEAD this code is not currently used because GENERIC kernels
include SMP. This work is mainly intended for RELENG_6 where the
GENERIC kernel is UP. If HEAD changes to match then just enable
WITH_SMP in sysinstall/Makefile.
2. The cpu probing support is done with acpi and MPTable; this means
some systems will require work for auto-detection to work.
3. The handling of /boot/kernel may need to be revisited; for now
we rename one kernel at the last moment (SMP if installed, otherwise
GENERIC). There are other, possibly better, approaches.

Lots of help from ru, emaste, scottl, and jhb.


# 156123 28-Feb-2006 jhb

Fix numerous warnings. Aside from menu items in system.c and menu.c
this now compiles on i386 with WARNS?= 3. Most of the fixes included
adding missing 'static' keywords to internal functions, using fully-defined
terminators in statically defined arrays of structs, and various
signed vs unsigned mismatches. Also G/C'd unused configSecurity()
function.


# 156118 28-Feb-2006 jhb

- Autogenerate a menu containing a list of countries and keymaps supported
by syscons.
- If we are running as init, popup the country menu before the main menu.
If a non-default country is chosen, then a second menu is brought up
to let the user choose a keymap. By default the default keymap for
the country that was selected is highlighted. If the user chooses the
default country, then the default keymap is just assumed and the user
is not presented with the keymap menu. Currently the default country
is set to "United States" except for PC98 which assumes "Japan".

PR: bin/93853
Submitted by: Seth Kingsley sethk at magnesium dot net
MFC after: 3 days


# 154925 27-Jan-2006 jkim

Add `mediaOpen' function. This function mounts selected media device.

For example, you can dynamically generate and load configuration file
depending on the hardware configuration with the following template:

mediaSetCDROM
mediaOpen
command='/dist/rescue/sh /dist/scripts/install.sh'
system
mediaClose
configFile=/tmp/generated.cfg
loadConfig

Now we have full access to files on the media before installation begins.


# 153430 14-Dec-2005 iedowse

Remove usbd(8) and all references to it. It is no longer necessary
since devd(8) now provides the same functionality.

Submitted by: Anish Mistry


# 150615 27-Sep-2005 nyan

Switch from OLDCARD to NEWCARD on pc98.


# 143065 02-Mar-2005 jhb

- Fix a bug in sysinstall related to mounting CD-ROMs. If mount(2) fails
with EBUSY and a cdrom is not mounted at /cdrom, sysinstall fails to
treat it as an error and thinks that the disk mounted ok. However, it
doesn't find a cdrom.inf file so it complains. Later when it tries to
unmount the disk due to a mediaClose() umount(2) returns an error, and it
never clears its internal mounted flag. The fix here is to properly
handle EBUSY as an error if there isn't a CD already mounted at /cdrom.
- Add a new CDROMInitQuiet variable that can be used to shut up the dialog
box about the mount(2) system call failing when trying to mount a CD-ROM.
This is used by the feature described below.
- When using a fixit CD, first try to see if we can mount the disc in the
drive now and use it as a fixit CD. If not, then prompt the user to
insert the disc and try again. If we do succeed on the first "silent"
probe then we don't ask the user to eject the disk after leaving fixit
mode.
- Add a simple file existence test to make sure that the disc that we mount
really is a livefs disc.
- Explicitly switch back to ttyv0 when using the standard console after
the fixit shell dies. Previously this behavior worked accidentally
because all the fixit modes popped up a dialog box which contained a
hidden switch to ttyv0.

MFC after: 1 day


# 139832 07-Jan-2005 kensmith

Minor comment fix.

MFC after: 1 week


# 134532 30-Aug-2004 kensmith

Remove support for configuring the X server from sysinstall. General
concensus seems to be that is best left for doing post-install.

Discussed on: freebsd-current@
Tested with: make release
Approved by: re@
MFC after: 3 days


# 133421 10-Aug-2004 kensmith

Initial pass at shifting sysinstall(8) to install X.org instead of XFree86.
There are still a few nits to work out (graphical config non-functional).

Patches by: anholt@, adapted slightly
Reviewed by: 'make release'


# 133241 06-Aug-2004 marcel

o Save pointers to the chunks for root, home, swap, usr, var and tmp in
global variables. On ia64, save a pointer to the efi chunk as well.
o At the same time, change checkLabels() to define these globals instead
of having the caller of checkLabels() pass addresses to variables for
these. Change the two callers correspondingly.
o Spent a bit more time adjusting try_auto_label() to prepate for having
the EFI partition created on ia64.
o Remove efi_mountpoint(). The EFI chunk is now available without having
to iterate over the disks and chunks to find it every time we need it.
o On ia64, now that the root chunk is globally available, set the
vfs.root.mountfrom tunable in loader.conf. This avoids that one cannot
boot into FreeBSD after an install. The kernel cannot find the root
device without a little help...


# 133196 06-Aug-2004 cperciva

Join the 21st century: Cryptography is no longer an optional component
of releases. The -DNOCRYPT build option still exists for anyone who
really wants to build non-cryptographic binaries, but the "crypto"
release distribution is now part of "base", and anyone installing from a
release will get cryptographic binaries.

Approved by: re (scottl), markm
Discussed on: freebsd-current, in late April 2004


# 133040 02-Aug-2004 marcel

Move the inclusion of libdisk.h from sysinstall.h to the source files
that actually need it. This makes it easier for a platform porter to
find the files that may need tweaking to support whatever MD specific
partitioning is needed. It also helps to prevent that the libdisk API
gets exposed and/or used where it's not needed.


# 126844 11-Mar-2004 bde

Fixed assorted misuses of NULL in integer context.


# 124068 02-Jan-2004 obrien

s/package_exists/package_installed/g as that's much more descriptive of
what the function does.


# 124067 02-Jan-2004 obrien

FBSD nit.


# 123053 29-Nov-2003 rwatson

Add a Securelevel sub-menu to the Security configuration menu,
permitting the administrator to select a securelevel top operate
at. Include a helpfile summarizing some of the information from
init(8). This allows for explicit configuration of securelevels,
which was previously implicit in Security Profile selection.
Currently, there are no checkboxes for the active securelevel,
because sysinstall's facilities for deriving "current settings"
from rc.conf may use only one variable, not two, and I opted for
the simplest approach at this point.

Approved by: re (scottl)


# 123032 28-Nov-2003 rwatson

Remove security profiles from sysinstall. Currently, security profile
selection is used to drive two configuration parameters:

(1) Default enable/disable for sshd
(2) Default enable/disable for securelevels

Replace this with an explicit choice to enable/disable sshd. A
follow-up commit will add a configuration option to the Security
post-install configuration menu to set the securelevel in rc.conf
explicitly. This should reduce the level of foot-shooting associated
with accidental enabling of securelevels, make the nature and
implications of the securelevel configuration options more explicit,
as well as make the choice to enable/disable sshd more explicit.

Approved by: re (scottl)


# 121890 02-Nov-2003 marcel

o Add PART_EFI so that we can use it instead of PART_FAT on ia64
to better deal with the fact that we need an EFI partition and
that we need to have a mountpoint for it.
o When creating a new partition, add EFI to the list of types
the user can select from. This makes it easy to create an EFI.
o Do not include wizard.c on ia64.
o The user cannot create a partition on ia64 that's a multiple of
the cylinder size. We don't have a notion of cyclinders.


# 121865 01-Nov-2003 marcel

o Do not define WITH_SYSCONS and WITH_MICE on ia64. We cannot have
a generic kernel with syscons.
o Do not define WITH_SLICES on ia64. We only label because we're
going to create GPT disks.


# 121245 19-Oct-2003 des

Various NFS-related bug fixes (mostly related to using variable_get()
instead of variable_cmp() to test boolean rc.conf variables).

Submitted by: hmp


# 119167 20-Aug-2003 imp

Add a new variable 'skipPCCARD'. This variable will cause sysinstall
to ignore all PC Card devices.

Submitted by: Anders Nordby
PR: bin/37650

MFC After: 2 weeks


# 119152 19-Aug-2003 obrien

Remove the vestiges of the old pre-"X_AS_PKG" way we used to handled the
installing XFree86 (version 3.3.6 and before).

Reviewed by: jhb


# 117475 12-Jul-2003 trhodes

Give users the ability to select an alternative MTA during the installation.
This option adds Postfix and Exim to the list, however, qmail is not added
due to license restrictions.

Collaborated with: Simon L. Nielsen <simon@nitro.dk>
Reviewed by: jhb, re@, -audit.


# 115435 31-May-2003 scottl

Teach sysinstall to recognize if acpi was turned off from the bootloader,
and then ask the user if this should be made permanent.

Approved by: re


# 115293 24-May-2003 peter

Add __amd64__ ifdefs to enable the bootblock handling code, slices, etc.

Approved by: re (murray)
Obtained from: obrien


# 113751 20-Apr-2003 rwatson

Throw the switch--change to UFS2 as our default file system format for
FreeBSD 5.1-RELEASE and later:

- newfs(8) will now create UFS2 file systems unless UFS1 is specifically
requested (-O1). To do this, I just twiddled the Oflag default.

- sysinstall(8) will now select UFS2 as the default layout for new
file systems unless specifically requested (use '1' and '2' to change
the file system layout in the disk labeler). To do this, I inverted
the ufs2 flag into a ufs1 flag, since ufs2 is now the default and
ufs1 is the edge case. There's a slight semantic change in the
key behavior: '2' no longer toggles, it changes the selection to UFS2.

This is very similar to a patch David O'Brien sent me at one point, and
that I couldn't find.

Approved by: re (telecon)
Reviewed by: mckusick, phk, bmah


# 112017 09-Mar-2003 robert

Remove a function prototype for `crc' and an associated comment which
were useless for at least seven years and eight months.


# 111644 27-Feb-2003 sobomax

Add a new variable `noInet6', which if set disables IPv6 configuration
dialog for network interfaces.

MFC after: 20 days


# 111592 27-Feb-2003 jwd

- Increase the maximum device name length.
- Actually check that the entered device name does not exceed the
maximum device name length.

PR: misc/18466
MFC after: 2 weeks


# 109434 17-Jan-2003 jhb

- Rename installFixupBin to installFixupBase to finish up the 'bin' to
'base' dist rename.
- Rework struct dist to allow for different types of dists. There are
currently three types of dists: DT_TARBALL, the traditonal gzipped and
split tar file; DT_PACKAGE, a package; and DT_SUBDIST, a meta-dist in
the tree that has its own array of dists as its contents. For example,
the 'base' dist is a DT_TARBALL dist, the 'perl' dist is a DT_PACKAGE
dist, and the 'src' dist is a DT_SUBDIST dist with its own dist table
that contains 'sbase', 'ssys', etc.
- Add helper macros for defining array entries for the different types of
dists to try and make the statically defined dist table in dist.c more
readable.
- Split the logic to deal with a DT_TARBALL dist out of distExtract()
and into its own distExtractTarball() function. distExtract() now
calls other functions to extract each dist.
- Tweak the percentage complete calculation in distExtractTarball() to
do the multiply prior to the divide so it doesn't have to use floating
point.
- Axe the installPackage() function along with the special handling for
the perl and XFree86 dists in distExtractAll() since distExtract()
handles package dists directly now.
- Add back in subdists for the X packages based on the split up packages
that XFree86-4 uses that as closely map to the X dists we used with
X 3.3.x.
- Lots of things like distSetX() and the X dist masks are no longer
#ifndef X_AS_PKG since we use them in both cases now.
- Make the entire installFixupXFree() function #ifndef X_AS_PKG, we only
call it in that case anyways, and it's not suitable for the X_AS_PKG
case.
- Add in X dist menus for the X_AS_PKG case.

Approved by: re


# 109333 15-Jan-2003 jhb

Add a function driverFloppyCheck() that asks the user if they would like to
load drivers from the driver floppy if the "driver_floppy" variable is set
in the kernel environment and call this function after probing devices but
before displaying the main menu.

X-MFC after: as soon as I finish committing to current
Approved by: re@ (blanket)


# 108870 07-Jan-2003 scottl

Teach sysinstall about rpcbind, rpc.lockd, and rpc.statd. As an added
bonus, rpcbind will be enabled automatically if rpc.lockd, rpc.statd, amd,
NFS Server, or NIS is enabled.


# 107565 03-Dec-2002 rwatson

Reformulate how sysinstall handles file system options in the label
editor, in order to support specifying UFS2 as a newfs option.

(1) Support three different newfs types: NEWFS_UFS, NEWFS_MSDOS, and
NEWFS_CUSTOM. Don't mix up the arguments to them: you can't use
soft updates on an msdos file system.

(2) Distinguish adding new arguments to the newfs command line from
replacing it. Permit the addition of new arguments by the user for
NEWFS_UFS. If we entirely replace the command line provided by
sysinstall, call it NEWFS_CUSTOM. 'N' will now add additional
arguments; 'Z' will opt to replace the newfs command line entirely,
but will prompt the user with their current command line as a
starting point.

(3) Construct the newfs command line dynamically based on the options
provided by the user at label-time. Right now, this means selecting
UFS1 vs. UFS2, and the soft updates flag. Drop in some variables
to support ACLs and MAC Multilabel in the future also, but don't
expose them now.

This provides sysinstall with the ability to do more "in band" editing
of the newfs command line, so we can provide more support for the user,
but doesn't sacrifice the ability to entirely specify the newfs command
line of the user is willing to give up on the cushiness factor. It
also makes it easier for us to specify defaults in the future, and
define conditional behavior based on user configuration selections.
For now, we default to UFS1, and permit UFS2 to be used as the root
only on non-i386 systems.

While I was there, I dropped the default fragment and block sizes,
since newfs has much more sensible defaults now.

Reviewed by: jhb, marcel
Approved by: re
ia64 bits from: marcel


# 107560 03-Dec-2002 jhb

Rename installX11package() to installPackage() and tweak it so that it
can be used to install any arbitrary package.

Approved by: re


# 107525 02-Dec-2002 marcel

ia64 specific.
o Mount the EFI file system as msdosfs and not ufs as it's a FAT
file system. Introduce Mount_msdos() for this to go side-by-side
with Mount().
o Also, since mounting is performed as a command (which means it's
queued, sorted, lost, found and executed), we cannot create a
directory on the file system by calling mkdir. We must make sure
the mkdir happens after the mount. Introduce Mkdir_command() to
allow mkdir operations to be queued, sorted, lost, found and
executed as well.

Approved by: re (jhb, rwatson)


# 107350 27-Nov-2002 jhb

- Only declare the MBR menu for i386 that is not PC98.
- Only declare mouse menus if WITH_MICE.
- Only declare syscons menus if WITH_SYSCONS.
- Only declare fdisk editor functions if WITH_SLICES.

Approved by: re


# 107337 27-Nov-2002 jhb

- Add a configOSF1() function (#ifdef __alpha__) that creates /compat/osf1
in addition to setting osf1_enable to YES.
- Only define configLinux() #ifdef WITH_LINUX.

Approved by: re


# 107336 27-Nov-2002 jhb

Add some helper macros to make #ifdef's in sysinstall easier to read
and more maintainable.
- WITH_SYSCONS: defined on all arch's that support syscons (currently i386,
alpha, and ia64)
- WITH_MICE: defined on all arch's that support moused(8) (currently i386,
alpha, and ia64)
- WITH_SLICES: defined on all arch's that use disk slices (currently i386
and ia64)
- WITH_LINUX: defined on all arch's that support Linux binary compat
(currently i386 and alpha)

Approved by: re


# 107330 27-Nov-2002 jhb

Expand X_AS_PKG so that we don't declare distribution bitmasks or menus
for the X distributions if X_AS_PKG is defined.

Tested on: i386
Approved by: re


# 106374 03-Nov-2002 nyan

- Added the MenuIPLType menu for selecting pc98 boot IPL.
- Disabled 'Syscons, Font', 'Syscons, Screenmap' and 'Syscons, Ttys' menus
on pc98.
- Fixed the MenuMouseType and MenuMousePort menus for pc98.
- Fixed some comments for pc98.


# 105514 20-Oct-2002 matusita

Since NEWCARD is the default for i386, undef PCCARD_ARCH.
pccard.c is no longer needed for i386 also.

OKed by: imp, nyan


# 97705 01-Jun-2002 matusita

Add 'Sendmail' menu to set sendmail_enable variable.

Reviewed by: bmah (description only)


# 97667 31-May-2002 jhb

Add a 'diskInteractive' variable that can be set to interactively partition
and label a disk from a sysinstall script.


# 95825 30-Apr-2002 obrien

Add the ability to use Bzip'ed packages.
Also add the ability to use Bzip'ed distributions -- but this is exclusive
of being able to use Gzip'ed distributions.

Sponsored by: FreeBSD Mall, Inc.


# 94597 13-Apr-2002 murray

Add the concept of a volume to the device and package structures. If
these values are different for a given package, then we must prompt
the user to insert another disc before the package can be installed.


# 94056 07-Apr-2002 murray

GCC >= 3 and C99 handle zero-length arrays differently than older
versions of GCC. With this change, sysinstall compiles and works fine
with GCC 3.1 or 2.95.


# 93401 29-Mar-2002 murray

Only build and link the pccard module on architectures that support it (and
that have room for pccardd on mfsroot.flp).


# 88358 21-Dec-2001 rwatson

o Add a configSecurity menu to generally configure security settings,
and pull configSecurityProfile under that menu. Add a menu option
to determine whether LOMAC is enabled at boot. Probably, eventually,
many of the 'Security Profile' menu choices should be pulled out
independently into the Security Menu, so as to make them individually
selectable.

Sponsored by: DARPA, NAI Labs


# 87583 10-Dec-2001 dillon

cleanup


# 87557 09-Dec-2001 dillon

Cleanup sysinstall's 'A'uto partitioning mode to provide more reasonable
defaults both in regards to the size of the partitions that are created
and in regards to safety and functional separation.

Still TODO: extend the previous partition to cover a deleted partition
if the previous partiton was auto-created, and supply some sort of
solution for /tmp.

Reviewed by: Just about everyone
Approved by: Nobody except maybe my pet mouse fred
Obtained from: God, so complain to HIM
MFC after: 1 week


# 87165 01-Dec-2001 matusita

Remove kget() feature, which is removed from 5-current kernel.

Since userconfig feature is implemented by tweaking variables (hint.*)
with loader(8), we can put back an equivalent feature. Maybe the first
step for this is to commit yokota-san's patch (add userconfig command
for loader).

Approved by: jkh


# 84863 12-Oct-2001 jkh

Add the ability to load klds from a floppy as part of the installation.

Submitted by: "Daniel O'Connor" <doconnor@gsoft.com.au>
MFC after: 2 weeks


# 84831 12-Oct-2001 jkh

DTRT in the restart case


# 83880 24-Sep-2001 murray

Add a couple of functions to create persistent variables that will
survive a sysinstall Ctrl-C -> 'Restart'. This fixes another annoying
bug where restarting sysinstall will try to reload kernel modules and
do other external things that have already been done. For now, use
these persistent variables to keep track of module, usbd, and pccardd
initialization.

Bug found by: rwatson
MFC after: 1 week


# 83842 22-Sep-2001 murray

Silence warnings :

Use static as necessary.
Use __unused as necessary.
sizeof(int) != sizeof(void *)


# 83820 22-Sep-2001 murray

Add a function to free all of sysinstall's internal variables from the
environment. This fixes an annoying bug where hitting Ctrl-C and
telling sysinstall to 'restart' will do no such thing since many of
the options are still set and so you won't be prompted for them
again.

MFC after: 1 week


# 81507 10-Aug-2001 rwatson

o Reduce the number of offered security profiles, as we now have a more
conservative default, and actually prompt specifically for inetd rather
than handling it as a side effect of the security profile. Update the
help file to reflect this change.
o Rename "Fascist" to "Extreme" in the source code, to match the names
presented to the user.
o Remove portmap and inetd from profile management. Portmap is now
disabled by default, but automatically turned on if a feature requires
it (such as NFS, etc).

This is an MFC candidate for 4.4-RELEASE.

Reviewed by: freebsd-arch@FreeBSD.org
Approved by: re@FreeBSD.org
MFC after: 2 days


# 81237 07-Aug-2001 rwatson

In preparation for MFC of sysinstall changes to edit /etc/ttys in
post-install config, reduce the potential confusion from the existence
of both configTTYs and configTtys by renaming configTTYs to
configEtcTtys. While this is not a C naming conflict, it was probably
a poor choice of names on my part.


# 81024 02-Aug-2001 rwatson

Add the ability to modify /etc/ttys before first reboot during the
system installation process. This allows users installing via serial
console to enable serial console login during the installation
process using an un-customized install. The user is not prompted to
modify /etc/ttys during a normal install, but is offered the
opportunity during post-install configuration.

- Introduce configTTYs(), which describes the benefits of editing
/etc/ttys, and asks for confirmation before spawning the editor.
- add configTTYs to the post-install configuration, as well as to
the global configuration index.


# 81023 02-Aug-2001 rwatson

Compensate for default disabling of network services in inetd.conf(5)
by providing the opportunity to edit inetd.conf during the system
installation process. The following modifications were made:

(1) Expand the Anonymous FTP description dialog to indicate that inetd
and ftpd must be enabled before it can be used.

(2) Introduce a new configInetd() pair of dialogs, the first describing
inetd, giving a couple of examples of services that require it, and
hinting at potential risk, then asking the user if they wish to
enable it. The second indicates that inetd.conf must be configured
to enabled specific services, and asks if the user would like to
load inetd.conf into the editor to modify it. Add this
configuration action to the index.

There are some further improvements that might be considered:

(1) Provide a more inetd.conf-specific configuration tool that speaks
inetd.conf(5). However, this is made difficult by the "yet another
configuration format" nature of inetd.conf, as well as its use of
commenting to disable services, rather than an in-syntax way to
disable a service without commenting it out. Submissions here
would probably be welcome.

(2) There's some overlap between settings in the somewhat obtuse
Security Profile mechanism and other settings, including the inetd
setting, and NFS server configuration. As features become
individually tunable, they should probably be removed from the
security profile mechanism. Otherwise, somewhat counter-intuitively,
sysinstall (in practice) queries multiple times whether inetd, nfsd,
etc, should be enabled/disabled. A possible future direction might
be to drive profiles not by degree of paranoia, rather, the set
of services desired. Or simply to remove the Security Profile
mechanism and resort to feature-driven configuration.

Reviewed by: imp, chris, jake, nate, -arch, -stable


# 79813 17-Jul-2001 ache

Add ability to configure console terminal type in /etc/ttys

Reviewed by: audit, jkh's silence


# 79304 05-Jul-2001 kris

Mark relevant functions __printflike()/__printf0like() and silence some of
the non-constant format string warnings.

MFC after: 1 week


# 79065 01-Jul-2001 dd

Introduce DEVICE_INIT, DEVICE_GET, and DEVICE_SHUTDOWN macros. As the
names suggest, they perform methods on Device's. In addition, they
check that the pointer passed to them is valid; if it isn't, they
pretend that the action failed. This fixes some crashes due to NULL
dereferences (e.g., PR 26509).

Approved by: jkh (some time ago)


# 78160 13-Jun-2001 olgeni

Add terminal type configuration to the Options screen. It allows selecting
a monochrome display after booting into sysinstall, if you have any trouble
with the default color scheme.

Approved by: jkh
MFC after: 2 weeks


# 76402 09-May-2001 jkh

Fix what was clearly a 3am brain-o; Boolean should be signed, not
unsigned. C is kinda loose about this sort of thing but it's no excuse.

Spotted by: kenny


# 74177 12-Mar-2001 jkh

Allow a script-using to disable the emergency holographic shell as
a security measure.

Requested by: "David E. Cross" <crossd@enterprise.cs.rpi.edu>


# 74086 10-Mar-2001 jkh

Support setting soft updates from the label editor.


# 73322 02-Mar-2001 peter

Ack! I finally got annoyed enough to actually kill this. There is no
need to manually force the network_interfaces variable in /etc/rc.conf,
and it only ever gets in the way. rc.network and rc.network6 DTRT with
the default of 'auto'. This should have died over a year ago.


# 70005 14-Dec-2000 jkh

Adapt sysinstall to use the new msgNoYes() function which assumes
no as a default. Sysinstall should be both less dangerous and less
annoying as a result of this change, though that's just my opinion
(since they're the defaults which annoy ME the least :).


# 68385 06-Nov-2000 hosokawa

release/sysinstall/lndir.c has not been used, but statically linked
to sysinstall for long time. Remove it.


# 68048 31-Oct-2000 hosokawa

Moved driver modules for some PCI NICs and PCCARD-only NICs to mfsroot.flp.
http://people.freebsd.org/~hosokawa/driver-floppy/ for details.

Reviewed by: current@FreeBSD.org


# 67862 29-Oct-2000 eivind

Teach sysinstall how to restart itself on Ctrl-C (as an addition to its old
tricks of rebooting and continuing where it was.)

Reviewed by: jkh, jhb


# 67124 14-Oct-2000 jkh

Add another security configuration profile, call it "high" and
rename the previous one to indicate that it's not just high, it's
extreme (everything off, secure level raised).

Submitted mostly by: Tony Finch <dot@dotat.at>


# 66369 25-Sep-2000 jkh

Fix the http proxy fetch code.

Submitted by: Philipp Mergenthaler <p@i609.hadiko.de>
PR: 21449


# 66263 22-Sep-2000 jkh

One whack at the idea of having "security profiles" which select the
appropriate(?) defaults for "low", "medium" and "high" security
environments. Medium is basically what we currently have with a little
seat-belt tightening where it made sense. Low is the same as medium but
without the tightening. High is positively fascist with nothing turned
on by default and an automatic call to 911 if it can find a modem.


# 63804 24-Jul-2000 jkh

Terminate, with extreme prejudice, the USAResident hack which
does bad things to /etc/make.conf in certain situations. Also
soften the "don't install crypto from the USA!" messages since,
except for RSA (which is still noted), that's not so true anymore.


# 63737 21-Jul-2000 jkh

Add a terminal entry for xterm; a lot of people are using xterms
in the serial-installation of FreeBSD.


# 63404 18-Jul-2000 obrien

Allow the Fix-it functionality to detect that we are on a serial console,
and DTRT rather than start the fixit shell on a non-existant vty.

PR: 19837
Submitted by: Doug Ambrisko <ambrisko@whistle.com>
Approved by: JKH


# 63118 14-Jul-2000 ume

IPv6 support.
IPv6 configuration is only done by rtsol. Does someone really
need manual configuration? :-)
You can specify IPv6 DNS server as well.
We have only one server ftp7.jp.freebsd.org that speaks IPv6
in this time. ftp7.jp speaks IPv4 as well and also listed as
Japan #7.

Approved by: jkh


# 61277 05-Jun-2000 nyan

- Remove obsolete PC-card boot.flp hack. It was for making both PC-card
boot.flp and plain boot.flp.
- Clean up crunchgen related routine.

- Add PC-98 support.
TODO:
o Documentation
o Fix some messages for PC-98
o Decrease the size of fixit.flp to 1.2MB
o I18N (See: http://www.jp.FreeBSD.org/BootAsia/index.html)

No response from jkh


# 60657 16-May-2000 obrien

Add an option to select the Fix-it tty. The current behavior is utterly
*useless* on serial consoled machines.


# 60417 12-May-2000 jhb

Add support for USB to sysinstall. This includes running usbd and
setting 'usbd_enable' in rc.conf during nwe installs if USB is detected.
Also, since usbd already handles USB mice automatically, note that the
mouse setup section in sysinstall only applies to non-USB mice.


# 59088 08-Apr-2000 murray

PR: 17559
Approved by: jkh

You can't enable 'emulate 3 button' option for moused in sysinstall.
This adds a menu option to set moused_flags and the help text explains
that entering "-3" will enable this feature.


# 57924 12-Mar-2000 jkh

Remove PkgInteractive hack - it won't work like this.


# 57617 29-Feb-2000 jkh

o Add support for loading the rsaref or rsaintl packages, depending
on locale.

o Allow use of "G" in label editor to stand for gigabytes. This
is actually an unrelated patch which I meant to commit separately
but what the heck, it's late.

Partially submitted by: phk


# 57613 29-Feb-2000 jkh

Revise this for the brave new world of "crypto"

Submitted by: markm
Approved by: me!


# 57346 19-Feb-2000 jkh

If user says they're in the USA, record that fact in /etc/make.conf


# 57315 18-Feb-2000 jkh

Don't call it a Novice install, call it Standard.
Also say thousands of packages, not hundreds.


# 56244 18-Jan-2000 obrien

* add SVR4 and OSF/1 enabling in the Start Up config menu
* deals with X11 install when all we have is the Port (such as on the Alpha)

Ok'ed by: JKH


# 55942 14-Jan-2000 hosokawa

Eliminate PC-card installation floppy and add PC-card support for
generic installation floppy.


# 55392 04-Jan-2000 jkh

Add support for FTP installation via HTTP proxies.

Submitted by: Philipp Mergenthaler <un1i@rz.uni-karlsruhe.de>
PR: 11316


# 53015 08-Nov-1999 jkh

Allow distributions to be excluded more easily in scripts.

Submitted by: Brian Dean <brdean@unx.sas.com>


# 50797 02-Sep-1999 jkh

It's "router_flags" not "routerflags"

Submitted by: kasey@ambernetworks.com
PR: 13534


# 50780 01-Sep-1999 jkh

Oh crud, did I ever screw the pooch! Rather than sync this with -stable,
I backed-out the changes in -current and didn't touch stable at all (I
thought I had my patch order reversed, not what actually happened).
AIEEE! I can't even blame the crack for this one since I broke my
crack pipe a few weeks ago. I think sleep deprivation gets the blame
for this one.

Medal for noticing this one goes to: Jim Bloom <bloom@acm.org>


# 50725 01-Sep-1999 jkh

MFC: Catch 3.2-stable sysinstall up to 4.0-current level functionality,
bringing in DHCP support. The only thing I left out were Poul-Henning's
newfs changes since I'm not sure if he's brought the rest of that support
into -stable yet. If it turns out that this is the case, I'll MFC those
changes too.


# 50479 27-Aug-1999 peter

$Id$ -> $FreeBSD$


# 49441 05-Aug-1999 phk

Make the newfs parameters a global option.

The default is still "-b 8192 -f 1024" but my experiments show that
"-b 16384 -f 4096 -c 100" is a more sensible value for modern
disksizes.


# 49110 26-Jul-1999 brian

Add a default ppp.conf (mode 600).

Originally submitted by: Wayne Self <wself@cdrom.com>

Allow a ppp startup option in rc.conf.

Adjust sysinstall so that it appends to the end of ppp.conf
and uses the generated profile to start ppp in auto mode on
boot.

Submitted by: Josef L. Karthauser <joe@uk.FreeBSD.org>


# 48893 19-Jul-1999 jkh

Another batch of fixes for dhcp support in sysinstall, now dragging
in some code from C. Stone to parse the lease information. This is still
a WIP and this commit is largely intended to allow others to sync up; the
dhclient code still only works when doing dhcp configuration post-install
and requires a bit more work on the boot floppy before it will truly
work in the minimal bootstrapping role.


# 48881 18-Jul-1999 jkh

Some additional optimizations for using DHCP.


# 48843 16-Jul-1999 jkh

Re-enable DHCP client support again (but optional and turned off by default
for the time being) for debugging purposes.

Fix bug in options selection.


# 48624 06-Jul-1999 jkh

Add an option for more fully enabling linux compatibility.


# 48482 02-Jul-1999 jkh

Eliminate some varargs abuse.


# 47542 27-May-1999 jkh

Do a clean-up pass on error/warning messages.


# 47221 15-May-1999 jkh

o Prevent alpha installs from grabbing x86 bits and vice-versa, at least
on CDs and FTP sites.

o Collapse some redundant code.

o Fix typo'd menu.

o Restrict searches properly to packages rather than categories.

o Small tweaks to signal handling.

All RELENG_3 candidates.


# 47055 12-May-1999 jkh

Completely change the way package_add() does its work. Now we
handle dependencies at a lower level and use package add for this.
Also made index searches stricter.


# 46637 07-May-1999 jkh

Make saving kernel configuration info disable-able (may be useful in certain
situations).


# 46117 27-Apr-1999 jkh

o Make package matching for specific package loading use the Latest/
feature of packages now so that no version info is embedded.

o Add a default X desktop menu offering afterstep, enlightenment, KDE, GNOME
and Windowmaker desktops instead of the boring twm(1) based one if the
user so chooses. This will require a little testing.


# 45971 23-Apr-1999 jkh

Remove the registration stuff; we're redoing this and the emailed
registrations have a high failure rate for various reasons.


# 45371 06-Apr-1999 jkh

Add an option for resetting and rescanning the probed device list, perhaps
to now detect that CD you just remembered to put in the drive or that
pccard NIC that you've inserted (anybody can put pccardd in an mfsroot image
now you know.. :)

Requested by: Annelise Anderson <andrsn@andrsn.Stanford.EDU>


# 44894 19-Mar-1999 jkh

Offer an X Kern Developer collection, by user request (it's also more
orthogonal to the other entries).

Clean up X selection code a bit.

Choose proper architecture subdirectories on mirror sites now that we've
gone fully to the new multi-arch directory scheme.


# 43811 09-Feb-1999 jkh

Write changes out to /etc/rc.conf again; rc.conf.site is dead!


# 43688 05-Feb-1999 jkh

Add one more "escape" for marking internal variables.


# 43685 05-Feb-1999 jkh

Totally change the way variables are accounted for in sysinstall.
Now we know which variables are internal and which need to be
backed to /etc/rc.conf.site. rc.conf is not touched now.

Also kget kernel change information back properly and set up a loader.rc
file to use it.


# 43534 02-Feb-1999 jkh

Show dependencies in package menu.
PR: 7454
Submitted by: Stefan Eggers <seggers@semyam.dinoco.de>


# 43255 27-Jan-1999 jkh

Write changes out to /etc/rc.conf.site now rather than mucking with
rc.conf. There were many different ways I could have done this, some of
them "cleaner", but this represented the lowest impact.


# 42898 20-Jan-1999 jkh

Replace old SAVE_USERCONFIG code with a customized version of Andrzej's
kget code. Also collapse a redundant case in cdrom code.


# 42005 22-Dec-1998 jkh

Collapse the "get" code substantially by combining common functions.
Also make mountpoint for each media type easier to change.
Also reshuffled some menus for easier usage.


# 41311 23-Nov-1998 jkh

Adios version.h / RELEASE_NAME hack. Do this right.


# 41162 15-Nov-1998 jkh

o Break fixups into binary fixups and XFree86 based fixups.
o Move fixups into extraction routine so all consumers don't have to duplicate
the right behavior.
o Make some things more orthogonal (just for asthetics sake)
o Add option to go back and do it again if XF86Setup fails (possibly with
a different setup - this one has always annoyed me).


# 40347 14-Oct-1998 jkh

Use properties code.


# 39815 30-Sep-1998 jkh

various bits of overdue cleanup.


# 37735 18-Jul-1998 jkh

MF22: Paul Traina's changes.


# 36343 24-May-1998 jkh

Merge updates from 2.2


# 34793 23-Mar-1998 yokota

- Remove the notice that psm0 must be enabled before using the PS/2 mouse;
the device is enabled by default in the GENERIC kernel.
- Kill the mouse daemon, if any, when the user wants to disable it.
- Minor update on mouse menus.


# 34150 07-Mar-1998 jkh

Add a mouse configuration menu.
Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


# 30414 14-Oct-1997 jkh

Add a new startup variables menu for tweaking rc.conf variables in more
detail (also added more of them to the networking services menu). Add
new dmenuISetVariable() function for interactive setting of non-boolean
flags.


# 30345 12-Oct-1997 jkh

Separate the siamese twins that were the partition and label editor.
Now you can use one without entering the other and it will DTRT.
These changes just allowed me to do the most straight-forward new disk
installation I've ever managed with sysinstall.


# 29539 17-Sep-1997 pst

Put all variables in VAR_ #define's to force a single location for all
of these magic knobs. This is purely cosmetic and a documentation issue
so we don't have to glop through the source code looking for gems.


# 29517 16-Sep-1997 jkh

Much better dispatch code and scripting support.
Submitted by: pst


# 27798 31-Jul-1997 jkh

Make serial console based installs actually work by:

1. Detecting the split /dev/ttyv0 / /dev/console case, e.g. you've
booted with the -h flag and you have a VGA card also.

2. Adding an extra "menu" for selecting terminal type and adding ANSI
to the list of compiled-in terms.

3. Opening the proper file descriptors before disowning ourselves.
Requested by: pst


# 27433 16-Jul-1997 jkh

Eliminate Samba configuration. Sorry, but this was another one of
those ideas that, like the Apache server setup, was well-intentioned
but doomed to fail in the face of change. That and the fact that it
shouldn't be part of the installation tool, it should be part of the
post-installation setup tool (which we need to write). Combining the
two utilities into one utility was my first conceptual mistake.

Apologies also to Coranth Gryphon, who worked hard on the Apache
and Samba server setup code. These features were quite useful
for awhile, if that's any consolation, I just simply had the wrong
ideas about where to put them. :-(


# 26795 22-Jun-1997 jkh

Adjust my installation script to more closely match reality.

Add a system command to script mechanism (so you can call things like
tzsetup from scripts).

Add noError variable for causing script errors to be ignored.


# 26764 21-Jun-1997 jkh

Change the way that X configuration method is selected.


# 26717 18-Jun-1997 jkh

1. Add a noWarn flag so that scripts can turn warnings off.
2. If hostname not set from script, bring up interactive dialog anyway.


# 26613 13-Jun-1997 jkh

YAMF22


# 26610 13-Jun-1997 jkh

YAMF22


# 26514 08-Jun-1997 jkh

1. Make it possible to set up all the TCP/IP values from a script.

2. Update to XFree86 3.3


# 26456 05-Jun-1997 jkh

Resurrect / implement some of the more esoteric scripting features,
such as partitioning a disk or overriding an interactive prompt.


# 26010 22-May-1997 jkh

Adjust config variables to more closely match rc.conf


# 25989 21-May-1997 jkh

Actually, rethink last commit and simply remove the apache configuration
entirely, as promised earlier (it's outdated now and doesn't really belong
in sysinstall).


# 25988 21-May-1997 jkh

Update version of apache.


# 25476 05-May-1997 jkh

Adapt routing configuration glue to rc.conf format.


# 25473 05-May-1997 pst

Add in some more config file support -- add variables to shut up
sysinstall about the dangerously dedicated message, and other
variables to allow pre-configuring the distribution sets.

Still todo: add a variable to define an initial set of packages that
should be loaded.
Reviewed by: jkh


# 25251 28-Apr-1997 jkh

Adapt to rc.conf file format.


# 25052 20-Apr-1997 jkh

Sync with 2.2 and clean up some tortured english that was added.


# 24548 02-Apr-1997 jkh

Sync up to current state of development.


# 24038 19-Mar-1997 jkh

Some of my pending merge changes, Paul Traina's more flexible config
file loading code.
Submitted by: pst


# 23904 15-Mar-1997 jkh

Increase the size of the email address field.
Requested-By: joerg


# 23588 09-Mar-1997 jkh

Add a registration screen so we can finally start counting our little user
puppies.


# 23508 08-Mar-1997 jkh

YAMF22


# 22988 22-Feb-1997 peter

Revert $FreeBSD$ to $Id$


# 22842 17-Feb-1997 jkh

Finally DTRT with tcpOpenDialog(); it should have never diddled
mediaDevice directly.


# 22756 15-Feb-1997 jkh

Read /etc/resolv.conf information as well as /etc/sysconfig info, making
this a little more robust.


# 22746 15-Feb-1997 jkh

Correct bogus msg dialog.
Update to Lynx 2.7 (need to build 2.1/2.2 versions of this package).


# 22721 14-Feb-1997 jkh

o Try to be more aggressive about reading in old configuration data
so that we're more useful in multi-user mode. This is still not
100%, but it pulls in a lot more than it used to. Some of the "composite"
variables in /etc/sysconfig are going to take more work.

o Always write /etc/resolv.conf and /etc/hosts if it makes sense to do
so.

o Reset media properly when reselecting. Longstanding bogon.

o Pull SIGPIPE handling out of package.c; I'm actually hoping to handle
this differently shortly.

o Fix bug where cancel in TCP setup dialog still checked data fields.
I think this closes a PR, but I will have to go look.


# 22105 29-Jan-1997 jkh

Allow user to delete as well as install packages from the package
installer menu.

Fix status line code so informationals show up properly again.


# 22099 29-Jan-1997 jkh

Fix broken layout help (this is what broke the TCP help screen).
Allow DITEM_NO_ECHO to be encoded in layout field types and make
user.c use it for the password item.


# 21978 24-Jan-1997 jkh

Allow both types of XFree86 setup script to be run at user choice.


# 21976 24-Jan-1997 jkh

OK, I've got two ideas to file in the "really seemed like a good idea
at the time, but on further reflection..." bucket with these changes.

1. Checking the media before frobbing the disks was a fine idea, and
I wish it could have worked, but that leads to a rather difficult
situation when you need to mount the media someplace and you're about
to:

a) Chroot away from your present root.
b) Newfs the root to be.

You're basically screwed since there's no place to stick the mount
point where it will be found following the newfs/chroot (and eliminating
the chroot in favor of just using the "root bias" feature would work
great for the distributions but not the pkg_add calls done by the
package installer).

2. Automatic timeout handling. I don't know why, but alarm() frequently
returns no residual even when the alarm didn't go off, which defies
the man page but hey, since when was that so unusual? Take out timeouts
but retain the code which temporarily replaces the SIGINT handler in
favor of a more media-specific handler. This way, at least, if it's hanging
you can at least whap it. I think the timeout code would have been losing
over *really slow* links anyway, so it's probably best that it go.

This should fix NFS, tape & CDROM installs again (serves me right for getting
complacent and using just the FTP installs in my testing).


# 21971 24-Jan-1997 jkh

This is a patch that makes some of the "partitions" --> "slice" to be
more consistant in our use of the terms for differentiation between PC
partitions and traditional BSD partitions.

Submitted-By: obrien@cs.ucdavis.edu (David O'Brien)


# 21937 21-Jan-1997 jkh

Argh! Moving the media initialization to before the disk scribbling
section was a good thing, since it made it possible to detect media problems
*before* the installation started, but it also caused various things to
be mounted BEFORE the chroot() call, which definitely messes things up.

Fix this by detecting the pre-chroot() case and mounting into a subdir.


# 21897 20-Jan-1997 jkh

Add extra variables for the configuration of all packages, not just
the lynx browser.

Submitted-By: David O'Brien <obrien@cs.ucdavis.edu>


# 21859 19-Jan-1997 jkh

Use alarm's return status to more properly denote timeout rather than keeping
an icky global around.


# 21855 18-Jan-1997 jkh

Fix a variety of problems with my timeout handling, make it more
configurable (you can now set the timeout interval), fix a crash-bug
when no network device was attached.


# 21806 17-Jan-1997 jkh

Add timeout support to sysinstall's general media handling,
allow SIGINT to stand for "time out now!" in certain cases.


# 21766 16-Jan-1997 jkh

Damn! Forgot to update lynx also.


# 21765 16-Jan-1997 jkh

Minor cleanup, adjust for latest version of apache web server.


# 21730 15-Jan-1997 jkh

Keep our serial ports distinct so that first device is not found for
all (closes PR#2296).
Print better FTP failure diagnostics
Do better media failure checking in install.


# 21701 15-Jan-1997 jkh

Fix several problems:

1. Bus mouse selection didn't show up properly in mouse menu.
2. U&G management screen didn't respect cancel properly.
3. Novice not prompted to add users or set root password during installation.
4. Username length changes screw up user management form.


# 21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 21276 04-Jan-1997 jkh

Clean up device handling WRT slip and ppp devices. An incomplete transition
from one convention to another had things pretty fouled up in here.


# 21243 03-Jan-1997 jkh

Do something I've wanted to do for quite some time - collapse all the
common layout code into some work functions and make all the layout-using
routine adopt them. Also reorganize includes and generally clean up.


# 21010 29-Dec-1996 jkh

Support the use of the 2nd CDROM as a fixit aid. Also put the EHS
into a submenu in case you need to start it again (or at some other point
in the installation).

Submitted-By: joerg


# 20569 16-Dec-1996 jkh

1. Engage brain. 2. Write macro. Previous commit attempted to perform
2 before 1.


# 20484 14-Dec-1996 jkh

Now that I've got my source tree sorted out, bring all the things
I've been committing into 2.2 directly all this time.


# 20355 12-Dec-1996 jkh

Undo one of my memory optimization hacks - it actually made things more
complicated.


# 20331 11-Dec-1996 jkh

Be more efficient in how we use memory (stumbled across while looking for
something else) for attributes and variables.

Remove stack-stomper in sstrncpy().


# 20315 11-Dec-1996 jkh

Do a few things I've been threatening to do for a long time:

1. Don't use the MSDOSFS code for accessing FreeBSD distribution data.
Use Robert Nordier's stand-alone DOS I/O library for the purpose.
It this works as well as Robert says it does, it should drastically reduce
(or even eliminate) our "I can't install from my DOS partition!" calls.

2. As a result of the above, go to stdio file descriptors for all
media types.

3. Taking advantage of #2, start using libftpio for FTP transfers instead
of maintaining our own parallel version of the FTP transfer code.
Yay! I ripped something out for a change!

#1 Submitted-By: Robert Nordier <rnordier@iafrica.com>


# 20247 09-Dec-1996 jkh

As Paul has just pointed out, much of my strncpy() usage was either
bogus or overly complex and really needed to be done more consistently
and sanely throughout - no question about it. Done.

Suggested-By: Paul Traina <pst@Shockwave.COM>


# 20233 09-Dec-1996 jkh

Eliminate great evil in the networking code. That's all I'm gonna say.


# 20231 09-Dec-1996 jkh

Add Joerg's user management screen for David Nugent's pw(8) program, something
which will also need to be brought in before this screen will work.

Add some commentary about how the slip startup code is bogus.

Steal Joerg's loop for more properly closing all files and graft it into
the EHS startup. My loop was functional but more bogus.


# 19577 09-Nov-1996 jkh

1. Take out console setup in options now that Joerg has moved it into
the main menu.
2. Conditionalized a few small things which needed it.
3. Put PC98 X servers in their own menu, there are so many of them now.
4. Rampaged on the menus.c file in general, reformatting and cleaning up.


# 19573 09-Nov-1996 joerg

Sysinstall now offers the installation of a keymap early in the game!
Not all mappings are supported, most languages come only with one
encoding since this should be sufficient to get up & running in using
sysinstall, and we are already pretty tight on space. (My previous
commit has already bumped the boot MFS size by another 50 KB for
this.)

This feature requires the `kbdcontrol -L' i've just committed. Plain
text keymaps and the entire scanner are overkill for sysinstall.

Also updated the list of available keymaps while i was at it.

Reviewed by: jkh


# 19488 07-Nov-1996 jkh

Joerg's changes to add screen font and screenmap setting.
Some changes of my own to make screen saver configuration a little
more sane, and also make it easier to get to the keyboard/screen
setup from the options menu.


# 19397 04-Nov-1996 jkh

Placate Joerg some more by making screen savers get a reasonable default
timeout.
2.2-RELEASE candidate, like all the work here in release/sysinstall.


# 19385 04-Nov-1996 jkh

Use macros for package names so it's easier to update them in one
place (sysinstall.h) when packages change rev.

Change the way that the routing daemon is configured entirely, to
placate Joerg. Also auto-load gated if it's specified, while we're at it.


# 18931 14-Oct-1996 jkh

Remove the now-unusable ports configuration code. Swapping CDs is bogus.


# 18711 05-Oct-1996 jkh

Make the save_userconfig() stuff conditional and turned off by default
(for now - still a few more wrinkles here). Add more debugging code
and some cosmetic tweaks.


# 18683 04-Oct-1996 jkh

Syncronize my tree so Eric can access the latest code.


# 18619 01-Oct-1996 jkh

Installation cleanup, round II.


# 17375 01-Aug-1996 jkh

Close PR#1542. Don't just assume 24 lines, get the tty size.
Some things may still display text on the 24th line, but that's because
they've always been screens designed to fit into a minimal real-estate
and have hardwired assumptions about the dimensions. They'll be a little
harder to make dynamic.


# 17368 31-Jul-1996 jkh

Don't munge keystrokes.


# 17362 31-Jul-1996 jkh

Detect which partitions have already been created with `auto' so as not to create them
twice.

Various cosmetic tweaks.


# 17189 16-Jul-1996 jkh

1. Fix the CD installation bogon for Novice install I mentioned.
2. Add some code for dealing with a ports collection on the second CD now.


# 17034 09-Jul-1996 jkh

A number of improvements in the way statistics are printed, add a "chroot"
option for installing distributions and/or packages to somewhere other than /,
say for a case where you're installing to an external disk on some other
machine's behalf. More miscellaneous fixes to various problems I stumbled
across while adding this stuff.


# 17007 08-Jul-1996 jkh

Fix even more lurking bogons - why do I never find these until the last
possible minute? :-)


# 17005 08-Jul-1996 jkh

Whoops! Now that I'm decompressing docs into /tmp, it's important to
make sure that /tmp is there first! :-) While I'm at it, clean up the
somewhat inexplicably bogus Mkdir() function.


# 16975 05-Jul-1996 jkh

Support compressed doc files again.
Add a few strategic screen clears.
Do a lot less wasted screen I/O in restoring screen contents that don't need
restoring.
Use tar instead of cp to back up /etc in installUpdate.
Don't panic when upgrade shell exits.


# 16963 04-Jul-1996 jkh

Fix some minor reported bogons from the BETA


# 16895 02-Jul-1996 jkh

Document shortcuts.
Fix a bug which prevented variables from working properly


# 16887 01-Jul-1996 jkh

Make it plainer how to exit.


# 16828 29-Jun-1996 jkh

Put my changes back - Thanks, Peter! Boy, an errant Tag sure can mess
you up! :-)


# 16825 29-Jun-1996 jkh

Sync with 2.1-stable (I commited my changes there first by mistake due to
an errant CVS tag file).


# 16823 29-Jun-1996 jkh

Copy the documentation files up into the release area - I've been doing
this by hand all along. Silly.


# 16462 17-Jun-1996 jkh

Init network at proper time.


# 16412 16-Jun-1996 jkh

Add a top level function index.


# 16410 16-Jun-1996 jkh

Check network status earlier in FTP/NFS installs in order to reduce
user frustration.


# 16366 14-Jun-1996 jkh

Don't use some of the low-contrast text attributes I was using before - they
apparently look bad on some LCD screens. While I'm in there, tweak and adjust
a number of other minor interface details which have been bothering me for
awhile.


# 16327 12-Jun-1996 jkh

Some stuff I left out of the last commit - make toggle options toggle
again instead of simply letting you set them and staying that way forever.


# 16294 11-Jun-1996 jkh

A slight error in my logic had me using color text attributes on Hercules
monochrome displays. Whoops! Fix.


# 16208 08-Jun-1996 jkh

Implement selective text attributes for the syscons vty / vt100 emulator
selection since an attribute which looks good on a color console doesn't
necessarily look good in an xterm.


# 15972 28-May-1996 jkh

Sha-ZAM!

The root floppy is now gone. I shall not mourn its passing.
Everything we need is on boot.flp or the bindist.


# 15788 16-May-1996 jkh

Fix some long-standing malloc bugs in the package handling code (freeing garbage
in one place, leaking memory in another).

Add a facility to invoke subsystems directly by naming them on
sysinstall's command-line when running post-install. A replacement
for pkg_manage might, for example, be `/stand/sysinstall configPackages'

Fix bogon where upgrade shell was entered with tty modes spammed.

Fix bug with release name checking in ftp_strat. Turned a bunch of
bogus exit()s into proper calls to systemShutdown().


# 15439 28-Apr-1996 jkh

Add a new -fake argument to make sysinstall not actually change things while
I'm testing it.


# 15417 27-Apr-1996 jkh

Move some of functions around in order to make this stuff easier
to work on.


# 15416 27-Apr-1996 jkh

Bump snapshot release date - looks like I was off by a couple
of days!

More display fixes to sysinstall and assorted tweaking.


# 15383 25-Apr-1996 jkh

Quite a few changes:

1. Fix the last display bugs (I hope) by use of dialog rebuilds at stategic
points.
2. Clean up the distributions menus so that everybody (that's reasonable)
has All and Clear options for setting/clearing things en-masse.
3. Various attempts at display optimization.
4. Change the wording of the `Don't use Write!' dialogs to make them more
explicitly define when and when not to use the option.


# 15355 22-Apr-1996 jkh

Bring this into sync.

I still have a _very very annoying_ display bug which occurs when a menu
item causes a submenu to be displayed - the screen repaints for the original
menu (which is restored upon return from the submenu) are off by about 4
characters. I've tried restoring the screen, the cursor position, you name
it - same deal. Grrrr! This commit is my first step in trying to get someone
else to help me look into this one since I'm just tearing my hair out at this
point!


# 15242 13-Apr-1996 jkh

1. Update all the copyrights to delete useless clauses 3 and 4.
2. Change more of the menu code over to new system.
3. Streamline label editor.


# 15091 07-Apr-1996 jkh

Major surgery.

1. Use new dialog menu hacks (no strings, just arrays of dialogMenuItem structs)
so that I can create composite menus with radio/checkbox/... items in them,
removing some long-standing UI bogons in various menus. This work isn't
finished yet, but will be done in two phases. This is phase one.

2. Remove all the script installation stuff. I never got time to document it,
it was arcane and it just complicated much of the code. There are better
ways of doing this if I want to do auto-driven installations later.

3. Remove much dead code and otherwise attempt to remove as much historical
grot as possible so that this code is easier to hack on. This is also
a two-stage process, phase one of which is now complete.


# 14763 23-Mar-1996 jkh

Make the editor a selectable option. Some people don't care for `ee'!


# 14738 21-Mar-1996 jkh

Major enhancements to the package adder (next step is to use the new dialog
functions to make the menus far less klunky, but one thing at a time).

Fix bug that had debug output spewing uselessly on vty2 when running multiuser.


# 14670 18-Mar-1996 jkh

Lots of fixes:

1. Revamp package installer to use new dependency lists and also
pkg_add's new `read from stdin' mode to prevent a copy of the package
from hitting the disk unnecessarily.

2. More fixes for running "not as init" - don't get upset if CDROM already
mounted, do the right thing instead.

3. If running as init, assume first-time install and _don't show the
(W)rite option in the fdisk screen.

4. Many other little tweaks, some of which will have to wait for fuller testing
until I can create a boot floppy (testing certain system-destroying
features of sysinstall can be a royal pain). Expect some more commits.


# 14321 02-Mar-1996 jkh

Miscellaneous cleanup before big round of menu restructuring (to use new
libdialog features).


# 12661 07-Dec-1995 peter

Update the -current sources from the 2.1 branch.

Approved (in spirit) by: jkh


# 10882 18-Sep-1995 peter

This mega-commit brings in Jordan's latest sysinstall version..
This looks like it was developed offline, and is being spammed over the
top of the existing. "That's fine by me! I dont really care how you do
it, just get it in there..." said Jordan in a conversation a short while
ago...


# 9202 11-Jun-1995 rgrimes

Merge RELENG_2_0_5 into HEAD


# 8881 30-May-1995 rgrimes

Remove trailing whitespace.


# 8837 29-May-1995 jkh

Sync up my work for the night. This should implement ALL possible
installation methods and provide a fairly robust set of menu options.
This should also fix a few more bugs on Poul-Henning's latest gripe
list.


# 8810 28-May-1995 jkh

Sync up with Poul.


# 8803 28-May-1995 jkh

Humanize Poul-Henning's code. Status values should be properly
respected now.


# 8799 27-May-1995 phk

Major cleanup. Mediaroutines now get asked about a file. All the
multi part stuff centralized.
The final check is backwards or something so it always said it failed,
even it it didn't.
Fixed tcpip address check to not be stupid, 10.0.255.1 is legal.


# 8792 27-May-1995 jkh

Commit parts of reorg that were diffs. Substantially re-engineer the
extraction and mediaGetFTP() handshaking to solve some unexpected complexities.


# 8768 26-May-1995 jkh

Clean up the configuration stuff a bit more - we should now populate
/etc with good things(tm).

Fire off ppp with all the proper initial options set.


# 8756 26-May-1995 jkh

Totally revamp the TCP/IP dialog; now network selection makes a bit more sense.

Root floppy (which actually may be able to go completely away at some point
soon!) is now loadable from ftp/nfs/dos as well as CDROM and (of course)
floppy.

Fix more problems on Poul's Gripe List.


# 8751 25-May-1995 jkh

Bring in all my fixes to Poul's gripe list as of last night.


# 8739 24-May-1995 jkh

Put back some changes that were smashed in yesterday's release tree
shoot-down.


# 8735 24-May-1995 jkh

1. Spawn a shell on VTY4 and leave it lying around.
2. Bring in Gary's prompt stuff in extractGeneric.
3. Add another global for telling when we're running as init.


# 8722 24-May-1995 jkh

Sync to latest ftp-capable sysinstall. We're getting there!


# 8715 23-May-1995 jkh

Add a final configuration menu and the beginnings of the backing code
for it. The ftp installation method is working well enough to test.
Many more bug fixes, says Gary.


# 8709 23-May-1995 jkh

Add my first cut at TCP/IP device configuration. If this works, the
ftp installation method should now function. We'll know as soon as my
make release builds the floppies. I'm just committing this out of my
release tree now so that it doesn't get clobbered again.


# 8705 23-May-1995 jkh

1. Bring in the first cut of Poul's ftp routines. We still don't
use them yet, but it's close (we're working on the last wrinkles
in the CD install for now).
2. Complete the CDROM installation strategy code.
3. Simplify the distribtuion loading code.
4. General error message cleanup.
5. Write the /etc/fstab file now and split those routines into config.c
6. Clean up the menus a little more.


# 8677 21-May-1995 jkh

1. Start syncing up the network strategy code so that folks like Poul and
Justin can see it.

2. Attempt to fix the redisplay problems in label.c some more. Not clearing
the screen each time is certainly faster, but it's causing all sorts of
problems.


# 8660 20-May-1995 jkh

1. Add MBR type menu to take it off of Poul's "gripe sheet".
2. Syntax correction from Andrey.

Good night! :-)


# 8642 20-May-1995 jkh

Fix the DOS discovery code to now re-allocate another virtual device if
it's called multiple times in a row. Add a new device type "DEVICE_TYPE_DOS"
so that we can look up an previous results.


# 8641 20-May-1995 jkh

1. Fix a pathological bug I introduced in msgInfo(). Right idea, wrong
implementation.

2. Totally rework device registration. It's about half the size and
more powerful now.

3. Add DOS discovery.

4. Start filling in some of the strategy routines.

5. Another clean-up pass over the menus.

6. Make wizard code use Disk typedef.

If I can get the first strategy routine finished tonite, we should have a working
install (from ftp, at least) this weekend.


# 8637 20-May-1995 gpalmer

Make Jordan's ``half baked'' code compile so that make release's aren't
stopped dead in their tracks. Also add the beginnings of my
distribution extraction code in media_strategy.c


# 8636 19-May-1995 jkh

This doesn't work - the extract code is half-baked. I commit it only
so that Gary can sync to it before I go to bed.. :)


# 8629 19-May-1995 jkh

1. Incorporate Nickolay's ammended patches for Russian screenmap support
as per Andrey's letter. Make a few modifications for correctness.

2. Add Language menu back to first menu - it was too buried in the
Options menu.

3. Add size information to all distributions.

4. Add a compat20 distribution (we need to make one of these!! Any takers? Please?)

Submitted by: Nickolay N. Dudorov <nnd@gw.itfs.nsk.su> & jkh


# 8601 18-May-1995 jkh

1. Use 8x16 fonts.
2. Don't use russian screenmap - apparently not necessary with right font.
3. Dequote bogusly quoted font name in english language setting.
4. Use setterm() and hack around an undesirable side-effect (cbreak is unset).
5. be smarter about setting OnVTY, and use it in cases where it makes sense.
Submitted by: Nickolay N. Dudorov <nnd@gw.itfs.nsk.su>


# 8576 17-May-1995 jkh

Commit my latest so that Gary can sync up - this version should also
be the grounds for our first round of testing in the release I'm rolling.
It doesn't load the distributions yet, but it should do everything else.


# 8556 16-May-1995 jkh

This will now compile and even scribble helpfully on your disks.
It remains to be seen how successfully. The distribution loading code
is still not here yet, but the partition/newfs/mount/cpio-extract cycle
is as complete as it's ever going to get, modulo possible bug fixes.
The TCP/IP setup screen is also sort of here, albeit in a highly-changing
state due to the fact that per-interface information isn't being kept
right now but is being added (thanks, Gary!).


# 8549 16-May-1995 jkh

This does _not yet compile_; I'm simply bringing in my changes from
this weekend in order to more easily sync with my CVS tree at home.
Another commit relative to these changes will follow shortly.


# 8405 10-May-1995 jkh

Fold in all my recent changes.
Do another clean-up pass over this, making the generic menu handler much
more powerful (now handles multiple dispatch). A few more menus fleshed
out and the beginnings of the distribution handler committed. Should
be transfering full distributions over in the next commit.


# 8363 08-May-1995 jkh

Sync these up so that they'll get into my CVS tree at home, where I'll continue
working on the distribution extract stuff.


# 8351 08-May-1995 jkh

Perform a much needed tidying-up pass over this code. Sleep for now,
more tomorrow.


# 8347 08-May-1995 jkh

Ok, we should now create all filesystems, mount them and extract the
cpio floppy at this point.


# 8336 07-May-1995 jkh

Another sync up for Poul. Added a lot more error checking.


# 8313 07-May-1995 jkh

Print sizes of partitions now.


# 8307 06-May-1995 jkh

Some fairly serious cleanup. The proper offset should now be used in
creating partitions. Still need to get the mount points displaying carefully,
but I need to get this into my tree on time so that I can work on that.


# 8302 05-May-1995 jkh

All the editors are finished. Now if I can just get a problem with libdisk
fixed, we should be able to fully set up the user's disk. Still to come
with next commit: filesystem setup, distribution extraction, final
configuration.


# 8281 04-May-1995 jkh

Everything but the partition editor is done. This commit is for MBR testing.


# 8278 04-May-1995 jkh

This will now write MBR entries - should be enough for testing.


# 8262 04-May-1995 jkh

My latest round of changes - make the "slices" editor work.


# 8208 01-May-1995 jkh

Commit my latest changes before having a nap. Still not close to done,
nor is it in sync with my working sources, but it leaves me less CVS hassles
to bring in the new files at this time. Still no documentation to translate
quite yet, but soon. This stuff is actually very close now.


# 8174 29-Apr-1995 jkh

o Add extra menu types (radio implemented, multiple choice shortly).
o Make the framework generally more robust.
o Figured out how to nest the menu descriptions - no more grotty initialization
of menus.
o Fix bug with helpline and helpfile not being reset.
o Add stubs for the media selection code.

Coming next: Fdisk and disklabel screens using Phk's new libdisk stuff.


# 8107 27-Apr-1995 jkh

Latest raft of changes.

Added another couple of menu item types.

Reshuffled the menus and added a few more. Sure wish I could figure out
how to initialize a menu with _one_ initializer rather than two! :(


# 8098 27-Apr-1995 jkh

This commit was generated by cvs2svn to compensate for changes in r8097,
which included commits to RCS files with non-trunk default branches.


# 8097 27-Apr-1995 jkh

Here is my first "framework" commit of the new sysinstall. There is a LOT
more to come in the next 24 hours, this is just the first stable result of
8 hours of hacking so far. The specification format for menus is pretty
much hammered out and the beginnings (very humble) of the doc hierarchy
are present for an example. It should be quite easy to add a lot more
menus quickly to this since I did go somewhat out of my way to make the
framework easy to work with. This is NOT the glorious semi-graphical
sysinstall (or whatever its name will be) that the install-geeks are working
on, this is simply the "son of sysinstall" I've been promising to write in
the interim for 2.0.5 and 2.1R (super install doesn't come until 2.2R).