Age | Commit message (Collapse) | Author |
|
* init.c (setup_terminal): Free LINE after done using it.
(process_rc_script): Likewise free RCARGS.
Both reported by Katusya Tanaka (wyvern@pb3.so-net.ne.jp).
|
|
|
|
New function.
(bootstrap_args):
Initialize to 0.
(main):
Parse args using argp.
Include <argp.h>.
(options, doc):
New variables.
|
|
|
|
|
|
|
|
(init): Dependcy on -lutil removed.
(libutil-libsubst): Variable removed.
|
|
|
|
|
|
|
|
proc_setexecdata.
(open_console): Likewise, for file_set_translator.
|
|
lose).
|
|
for loop.
|
|
error; tolerate all errors silently.
|
|
|
|
Print an error messages for /dev/console not being a terminal.
Reduce the scope of some variables.
|
|
|
|
Pass correct length of argument vector when setting active translators.
<maptime.h>: New include.
|
|
|
|
|
|
|
|
(startup_terminal): Return non-zero if we don't actually start anything.
(startup_ttys): Return non-zero if we fail.
(launch_multi_user): If init_ttys fails, go back to single. If we go
multi, actually set system_state accordingly. If startup_ttys fails,
go back to single.
|
|
|
|
(startup_terminal): Deal properly if one of the run_for_real's fails.
(launch_single_user): If the shell can't be started, crash the system.
(process_rc_script): Return non-zero if run_for_real fails.
(process_signal) [SIGCHLD]: If process_rc_script fails, go back to
single-user.
(S_startup_essential_task): Likewise.
|
|
(add_terminal, init_ttys, free_ttys, startup_terminal, startup_ttys,
find_line, reread_ttys, restart_terminal): New functions.
(launch_multi_user): Use new functions to do things right.
(session_pid): Delete variable.
(kill_multi_user): Call free_ttys.
(process_signal) [SIGHUP]: Call reread_ttys.
[SIGCHLD/MULTI]: Call restart_terminal.
(run_for_real): New arg `setsid'; only do setsid if it's set. All
callers changed. Return the pid of the new program, not the task
port. All callers changed.
Include "mung_msg_S.h" instead of "msg_S.h".
(S_msg_sig_post, S_msg_sig_post_untraced): Include SIGCODE parm.
|
|
|
|
|
|
|
|
(S_msg_sig_post, S_msg_sig_post_untraced): Include SIGCODE parm.
|
|
|
|
(run_for_real, open_console, process_signal, reboot_mach,
run_for_real, run, reboot_system): Use error instead of fprintf.
(notify_shutdown): Always emit terminating newline.
(S_startup_essential_task): When all core servers have showed up, call
launch_single_user only if RB_SINGLE; otherwise call
process_rc_script. Call init_stdarrays here.
(open_console): New function; massaged guts taken from
launch_single_user. Be more verbose if we do something unusual.
(launch_single_user): Call open_console. Don't call init_stdarrays
here.
(system_state, default_ints): New variables.
(main): Initialize SYSTEM_STATE and DEFAULT_INTS.
(run_for_real): Pass default_ints.
(run): Likewise.
(S_startup_essential_task): Delete var INITDONE; use SYSTEM_STATE
instead.
(launch_single_user): Set SYSTEM_STATE to SINGLE.
(process_rc_script): New function.
(launch_multi_user): New function.
(kill_everyone): New function.
(kill_multi_user): New function.
(do_fastboot, rc_pid, session_pid): New variables.
(process_signal): New function; guts from S_msg_sig_post_untraced.
Handle state transitions here when programs exit. Process SIGTERM,
and SIGHUP appropriately.
(_PATH_RUNCOM, _PATH_LOGIN): New macros.
(S_msg_sig_post_untraced): Only validate signal here; use
process_signal to do the work, but reply first.
(S_msg_sig_post): Likewise.
(notify_shutdown): New function.
(reboot_system): Use notify_shutdown.
|
|
|
|
|
|
|
|
|
|
kernel so that the user has a chance to see any messages that may be
displayed.
|
|
|
|
S_msg_set_some_exec_flags, S_msg_clear_some_exec_flags): Delete
functions.
(S_msg_describe_ports): New function.
|
|
|
|
|
|
|
|
(struct ntfy_task): New member `name'.
(S_startup_request_notification): Expect and record name.
(S_msg_startup_dosync): Delete function.
(reboot_system): Use new startup_dosync interface.
(init_stdarrays): Use new authentication interface.
|
|
|
|
|
|
|
|
|
|
|
|
so it works with / read-only.
|
|
|
|
(main): Delete declarations of _etext _edata, and __data_start.
(main): Use new wire_task_self function instead of doing it ourselves.
|