From acb030991c07ad33a8d55ff19e493cc26a3ea6a6 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sun, 27 Dec 1998 08:41:15 +0000 Subject: 1998-12-27 Roland McGrath * opts-std-startup.c (startup_options): Move -C above "Boot options:", give it a docstring. Docstrings for --bootflags, --boot-command. (_diskfs_boot_command): New variable. (startup_options, parse_startup_opt): New option --boot-command, consumes remaining args to set _diskfs_boot_command. * priv.h: Declare _diskfs_boot_command. * boot-start.c (diskfs_start_bootstrap): If diskfs_exec_server_task is null, assume we are running as the boot command and have a root with /servers/exec. If _diskfs_boot_command is set, start that command in place of init. If can't lookup initname, print error msg and loop to prompt. Put a newline before "Init name" prompt. After starting exec server, try to set active trans on /servers/exec. (diskfs_boot_getpriv): New function: if _hurd_host_priv is null, use fsys_getpriv on our bootstrap port. (parent_task): New static variable, set there with fsys_getpriv call. (diskfs_S_fsys_init): If diskfs_exec_server_task is null, don't do anything with it; instead register parent_task as our child and send an fsys_init to our parent on our bootstrap port. * console.c (diskfs_console_stdio): Call diskfs_boot_privports before get_privileged_ports if diskfs_boot_flags is set. --- libdiskfs/priv.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'libdiskfs/priv.h') diff --git a/libdiskfs/priv.h b/libdiskfs/priv.h index 5a90c2b8..b5c9b98d 100644 --- a/libdiskfs/priv.h +++ b/libdiskfs/priv.h @@ -33,6 +33,9 @@ extern int _diskfs_nosuid, _diskfs_noexec; /* This is the -C argument value. */ extern const char *_diskfs_chroot_directory; +/* If --boot-command is given, this points to the program and args. */ +extern char **_diskfs_boot_command; + volatile struct mapped_time_value *_diskfs_mtime; extern struct argp_option diskfs_common_options[]; -- cgit v1.2.3