Commit Graph

94 Commits

Author SHA1 Message Date
Roy Marples
36118e7dbd Fix ksoftlevel handling, #190420. 2007-08-28 08:50:04 +00:00
Roy Marples
1ef8a7f041 Only open /proc/cmdline if it exists, #189686 thanks to Christian Affolter 2007-08-22 14:10:46 +00:00
Roy Marples
b10bd4b9d7 Stop un-needed services when changing runlevels, #189050. 2007-08-17 12:14:04 +00:00
Roy Marples
eba9b8ac14 Fully move esyslog into rc 2007-08-16 17:09:57 +00:00
Roy Marples
6e5c8f8e5a Add esyslog support 2007-08-16 16:53:20 +00:00
Roy Marples
0084bc41ef Don't link to rt anymore as it makes dlopen leak - we now use nanosleeps to achieve the same goal (a loop + timeout). No longer put / at the end of directories, instead prefix like so RC_LIBDIR "/foo" to ensure more robust code. 2007-08-09 14:33:20 +00:00
Roy Marples
1e4357ad01 Boot properly when we cannot set an early font, #187628. 2007-08-04 20:35:05 +00:00
Roy Marples
3e5526fd76 Fix rc-update, #187487 and release rc2. 2007-08-04 15:05:12 +00:00
Roy Marples
c674026f9e All our binaries are now mulicalls into rc, which makes our on disk size
a lot smaller.
2007-07-31 16:05:56 +00:00
Roy Marples
075e80b358 Merge some of reb's OpenBSD fixes in 2007-07-25 20:58:23 +00:00
Roy Marples
af2d9995d7 appending noinitd=xdm will skip the xdm service when first booting, #181858. 2007-07-23 11:36:12 +00:00
Roy Marples
6343b48893 RC_DEPEND_STRICT now controls dependency strictness.
If yes then we only use services in the boot and default runlevels,
regradless of service state.
If no then we take into account coldplugged services and the state
of currently running services.
Fixes #185640.
2007-07-21 12:49:51 +00:00
Roy Marples
74d52e749d Don't do interactive when changing init, #174141. 2007-07-11 13:02:05 +00:00
Roy Marples
356c41f77c Punt the dodgy ebuffer code. We now force prefixing for parallel starts which also reduces our variable pollution. 2007-07-11 12:06:37 +00:00
Roy Marples
7bb24d8058 Remove a debug line 2007-07-10 13:15:07 +00:00
Roy Marples
1cda2a2036 We no longer care about numerical runlevels, #184733. 2007-07-10 11:42:56 +00:00
Roy Marples
f28763d492 As we're running each plugin in a fork, we need to call our cleanup code so we don't leak memory. To this extent, we now have the global boolean rc_in_plugin and the cleanup code can act accordingly. 2007-07-04 16:02:01 +00:00
Roy Marples
0fdc53d54d Add --nocolor to more programs 2007-06-28 15:44:14 +00:00
Roy Marples
f9220d3e28 Change pwd to / for all init scripts, #181224. 2007-06-26 09:20:42 +00:00
Roy Marples
64e6dcfc9f Create a function for running init.sh and init-early.sh which saves on code and removes a gcc-4.2 warning 2007-05-22 12:25:43 +00:00
Roy Marples
237a66b05c Default eend to SUCCESS if no options given 2007-05-16 18:45:16 +00:00
Roy Marples
14c59d4071 RC_INTERACTIVE now works, #178331. 2007-05-14 12:48:37 +00:00
Roy Marples
2fd8225c6a Always pass ttyname to sulogin 2007-05-03 13:46:38 +00:00
Roy Marples
e18377acca Don't timeout waiting for checkfs and checkroot. Do a better fix later. 2007-05-02 15:17:03 +00:00
Roy Marples
cf9aa106c6 Set fonts in init-early.sh, don't stop services twice when shutting down and lock prefixed output. 2007-04-26 11:24:07 +00:00
Roy Marples
8e7868d80f Don't pass $CONSOLE to sulogin and split rc_environ_fd on NULLs 2007-04-25 15:48:54 +00:00
Roy Marples
dfc208bd25 We now have an alternative to buffering stdout and stderr.
RC_PREFIX="yes" will put the service name as a prefix to all output
made by the service. Thanks to Ciaran McCreesh for the idea.
2007-04-25 12:30:24 +00:00
Roy Marples
a44abb9577 We now buffer stdout and stderr to a file and flush that when running in parallel. RC_PARALLEL_STARTUP has been renamed to RC_PARALLEL. 2007-04-24 11:29:19 +00:00
Roy Marples
3979a1712d Style fixes 2007-04-20 19:03:56 +00:00
Roy Marples
35ee67f446 Re-work the starting and stopping of services so we always know the pid so we can kill our children without the need for process groups which we cannot use as keyboard will not work in init. 2007-04-20 18:58:42 +00:00
Roy Marples
a5ba34ec15 Fix rc-abort to notify the plugins we are aborting 2007-04-20 15:02:13 +00:00
Roy Marples
c52f216450 Added the rc-abort command, #175106 thanks to Daniel Drake. 2007-04-20 13:12:21 +00:00
Roy Marples
f269f1961b Plugins now run in a forked process for extra resliance. 2007-04-20 09:39:47 +00:00
Roy Marples
2569e85579 strdup -> rc_xstrdup 2007-04-19 14:54:35 +00:00
Roy Marples
f657d87b99 Rationalise our colour usage a little. 2007-04-17 09:32:18 +00:00
Roy Marples
e6674b2cae Cuddle up to LKML C style 2007-04-11 12:44:47 +00:00
Roy Marples
ffc96d8d89 Change veinfo and friends to einfov. Rationale - we may need veinfo to support va_list in the future. 2007-04-10 16:11:20 +00:00
Roy Marples
d3db9e9910 Fix indentation 2007-04-10 11:24:58 +00:00
Roy Marples
89ac4eee26 rc does not need SIGCHLD handler. Also, always return 0 in /etc/rc as non zero for default may freeze system. 2007-04-09 17:11:18 +00:00
Roy Marples
3c7c1736b7 Use names instead of numbers for reporting signals and trap signals in rc 2007-04-09 16:53:21 +00:00
Roy Marples
6e2ef07dd3 LIBDIR -> LIB. When interuppted, ensure service state is restored correctly. When stopping, don't uncoldplug too early. 2007-04-08 16:03:48 +00:00
Roy Marples
657be65340 Misc fixes, plugged a memory leak in runscript.c and use va_copy to avoid nasty segfaults 2007-04-06 01:04:07 +00:00
Roy Marples
308042c87b We now compile on OpenBSD (no idea if it works or not yet) 2007-04-05 15:01:09 +00:00
Roy Marples
5af58b4514 Rewrite the core parts in C. We now provide librc so other programs can
query runlevels, services and state without using bash. We also provide
libeinfo so other programs can easily use our informational functions.

As such, we have dropped the requirement of using bash as the init script
shell. We now use /bin/sh and have strived to make the scripts as portable
as possible. Shells that work are bash and dash. busybox works provided
you disable s-s-d. If you have WIPE_TMP set to yes in conf.d/bootmisc you
should disable find too.
zsh and ksh do not work at this time.

Networking support is currently being re-vamped also as it was heavily bash
array based. As such, a new config format is available like so
config_eth0="1.2.3.4/24 5.6.7.8/16"
or like so
config_eth0="'1.2.3.4 netmask 255.255.255.0' '5.6.7.8 netmask 255.255.0.0'"

We will still support the old bash array format provided that /bin/sh IS
a link it bash.

ChangeLog for baselayout-1 can be found in our SVN repo.
2007-04-05 11:18:42 +00:00