Commit Graph

591 Commits

Author SHA1 Message Date
Roy Marples
d1a1e3a3c9 Allow --user and --group to also mean --chuid and --chgrp 2007-08-17 10:54:04 +00:00
Roy Marples
e0a29e41a2 Allow 'del' to work as a command 2007-08-17 09:46:01 +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
3950eb6eba `config /etc/fstab' can now be used in depend() functions to show that
the deptree should be regenerated if /etc/fstab has changed.
2007-08-15 14:49:41 +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
9072ce748f getoptify and simply the code even more. 2007-08-09 09:53:47 +00:00
Roy Marples
f8c1ee736c Add help to rc-update #188170 and tidy up the code a fair bit. 2007-08-08 22:35:32 +00:00
Roy Marples
94c6ff7bb7 Plug a leek for non selinux linux systems 2007-08-08 03:07:42 +00:00
Roy Marples
30853d7473 If given a pidfile, just match on that for seeing if we have crashed
or not, #186159.
2007-08-08 03:07:09 +00:00
Roy Marples
01ea7e3186 More pppd fixes 2007-08-07 20:23:38 +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
a3aff5d83c Wups, these definitions need to be in rc.h really 2007-08-03 10:14:38 +00:00
Roy Marples
534b4300e7 rc1 2007-08-02 11:09:09 +00:00
Roy Marples
ed249bad88 Fix up einfo output a little 2007-08-01 11:33:07 +00:00
Roy Marples
c22ccdf577 Wups, don't force those CFLAGS 2007-07-31 16:59:02 +00:00
Roy Marples
a4e7e802ac Force some stuff 2007-07-31 16:57:16 +00:00
Roy Marples
90f0ea65cb Fix building on uclibc thanks to Solar 2007-07-31 16:40:32 +00:00
Roy Marples
cb172722a9 Fix building on Linux 2007-07-31 16:35:24 +00:00
Roy Marples
b6b849bfd7 Link the right objects against rc 2007-07-31 16:16:18 +00:00
Roy Marples
e6ec76ac40 All our binaries are now mulicalls into rc, which makes our on disk size
a lot smaller.
2007-07-31 16:06:21 +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
76f2391ece Skip some files in env-update like portage env-update for more robustness 2007-07-19 21:44:55 +00:00
Roy Marples
26d11b33cf Use printf so we don't put blank lines at the top of new files and fix mountinfo for nfs roots 2007-07-16 17:07:15 +00:00
Roy Marples
4cc1c3054a Fix compile on FreeBSD 2007-07-16 12:22:53 +00:00
Roy Marples
5154d19238 env-update --fork-ldconfig really forks ldconfig and works now 2007-07-16 07:19:32 +00:00
Roy Marples
44e575845f Don't use 'this' as a variable name as it confuses c++ 2007-07-13 14:30:33 +00:00
Roy Marples
06e687598d Punt the RC_TTY variable 2007-07-12 09:48:44 +00:00
Roy Marples
5257ba51b9 Don't unmount network filesystems in localmount or halt.sh, #175602. 2007-07-11 17:27:46 +00:00
Roy Marples
e778dcbfb0 Fix restarting services with plugins 2007-07-11 14:28:54 +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
2aa7ebfe0d Allow non root users to describe 2007-07-10 20:11:42 +00:00
Roy Marples
023d66578b Rename variable 2007-07-10 19:14:37 +00:00
Roy Marples
05201b514b init scripts and their extra options can now have descriptions, #184327. 2007-07-10 19:09:41 +00:00
Roy Marples
445918685e Support /etc/init.d/foo ineed and friends again. 2007-07-10 15:26:49 +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
53d17a1be2 Add an option to fork ldconfig in env-update, #182794. Also, preserve the entire line in /etc/env.d/foo if it begins with $ 2007-07-09 10:26:02 +00:00
Roy Marples
913b3b1f6b Of course, glibc does not have strlcpy 2007-07-06 17:07:29 +00:00
Roy Marples
809b5286b6 Make the prefix length dynamic 2007-07-06 15:50:40 +00:00
Roy Marples
7de9a73841 Don't trust the plugin 2007-07-05 08:39:32 +00:00
Roy Marples
710a67138f Flush the ebuffer before and after running a plugin. 2007-07-04 16:06:40 +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
46156cc8cd We need the full path to the service before chdir / 2007-07-04 14:56:59 +00:00
Roy Marples
9c7bbdd774 We still need to wait for services we need/use 2007-07-03 08:38:27 +00:00
Roy Marples
f23b6d0e95 Don't wait for services that were inactive, #183667 thanks to Daniel Drake 2007-07-02 22:07:58 +00:00
Roy Marples
3a9375c7df Make the provided code a little more readable and fix a bug when calculating provided services changing from single to default runlevel 2007-07-02 22:05:38 +00:00
Roy Marples
d6c72cc87c Fix error and only let root run init commands except for status and help 2007-07-02 19:57:18 +00:00
Roy Marples
afaa27fd65 Add --nocolor to more programs 2007-06-28 15:44:38 +00:00
Roy Marples
0fdc53d54d Add --nocolor to more programs 2007-06-28 15:44:14 +00:00
Roy Marples
10c3592147 Add --no-ldconfig option to env-update to match portage. 2007-06-27 12:35:43 +00:00
Roy Marples
f9220d3e28 Change pwd to / for all init scripts, #181224. 2007-06-26 09:20:42 +00:00
Roy Marples
0575c15993 Change pwd to / for all init scripts, #181224. 2007-06-26 08:47:46 +00:00
Roy Marples
75f776732b --nocolor works again, #181011 thanks to Daniel Drake. 2007-06-26 08:39:02 +00:00
Roy Marples
dd332f377c Improve spelling 2007-05-27 16:02:25 +00:00
Roy Marples
f754cfd2a9 RC_SYS should now set XEN0 correctly 2007-05-23 12:30:34 +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
49b36c5f2e Remove debug line 2007-05-16 11:28:45 +00:00
Roy Marples
1ac8d86ebe Stop using getimeofday for timeouts incase the clock changes. 2007-05-16 11:05:42 +00:00
Roy Marples
fc597a8721 /etc/conf.d/rc.$runlevel now works, #177869. 2007-05-15 15:56:35 +00:00
Roy Marples
f3888d7613 Implement FreeBSD's dlfunc function to avoid ISO warnings on dlsym - thanks to drizztbsd for find public domain code :) 2007-05-14 19:50:13 +00:00
Roy Marples
d0308aaecd Use correct function casts. Use dlfunc where available to remove ISO warnings :) 2007-05-14 17:05:55 +00:00
Roy Marples
14c59d4071 RC_INTERACTIVE now works, #178331. 2007-05-14 12:48:37 +00:00
Roy Marples
bbfb7bc409 Add --startas back to s-s-d, #175980, #175981. 2007-05-14 12:37:13 +00:00
Roy Marples
0942916b72 Allow time for pidfiles to be created, #178274.
Use int instead of char for getopt, #178084 thanks to drizztbsd.
2007-05-14 12:24:18 +00:00
Roy Marples
46cd245ee3 Use clock MONOTONIC to timeout, not localtime, #177514 2007-05-11 08:58:19 +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
c3608471cd SSD_NICELEVEL can now affect the nicelevel for daemons started
by start-stop-daemon, #175397.
2007-05-02 12:33:56 +00:00
Roy Marples
700bdb4f1d Stop blindly assuming that a blank TERM is cons25. For cons25 terms we drop one column so we don't get an extra newline. 2007-05-02 10:43:43 +00:00
Roy Marples
0380d98d7d restart/schedule stopped services when the trigger service goes inactive on a restart 2007-04-30 13:18:42 +00:00
Roy Marples
4d283afe31 /etc/init.d/foo start and stop no longer exit when service is fully
started or stopped, #176452.
2007-04-30 09:06:17 +00:00
Roy Marples
abfd181dde env-update now respects COLON_SEPARATED and SPACE_SEPARATED env.d values, #176198. 2007-04-27 11:24:05 +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
c1d6bfc721 Don't abort select when on signals 2007-04-25 18:12:49 +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
52c28add45 error then unlink 2007-04-21 09:23:37 +00:00
Roy Marples
81c595b3fe Don't free in vfork 2007-04-21 08:34:16 +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
49b8b30ab7 Fix fstabinfo -p / 2007-04-19 15:31:01 +00:00
Roy Marples
2569e85579 strdup -> rc_xstrdup 2007-04-19 14:54:35 +00:00
Roy Marples
3ed60d5202 Use RTLD_NOW instead of RTLD_LAZY 2007-04-19 14:41:10 +00:00
Roy Marples
f05ac25185 Fix bridge some more, remove superflous warning from vewarn and error when no interface correctly 2007-04-19 06:46:29 +00:00
Mike Frysinger
e2af000463 remove APPLET check so we can create .depend 2007-04-17 13:00:05 +00:00
Mike Frysinger
9d50d4cb25 start unifying help handling 2007-04-17 12:44:32 +00:00
Mike Frysinger
f5e65274f0 fix #if handling in get_term_columns 2007-04-17 12:21:15 +00:00
Roy Marples
f657d87b99 Rationalise our colour usage a little. 2007-04-17 09:32:18 +00:00
Roy Marples
54d297725e env vars EINFO_GOOD and friends now override our hardcoded builtins. 2007-04-17 07:06:04 +00:00
Roy Marples
6ff4a83d59 More basename compliance. 2007-04-13 16:00:25 +00:00
Roy Marples
2714263040 Punt .depend 2007-04-13 15:23:46 +00:00
Roy Marples
36e16cef47 Ignore and clean .depend 2007-04-13 15:23:03 +00:00
Roy Marples
876bd89f4b hug getopt_long some more 2007-04-13 15:20:10 +00:00
Mike Frysinger
6dde29a0c9 add basic --help 2007-04-13 15:09:37 +00:00
Mike Frysinger
1c82d53247 add hidden visibility support to libeinfo as well 2007-04-13 14:18:38 +00:00
Mike Frysinger
a822d2d118 kill off internal relocations for librc.so 2007-04-13 14:08:16 +00:00
Roy Marples
fc06063958 Use basename properly 2007-04-13 13:54:53 +00:00
Mike Frysinger
cb20c5da98 make sure .depend gets regenerated automatically 2007-04-13 13:21:27 +00:00
Mike Frysinger
2ea37cdae3 add .depend / .PHONY support 2007-04-13 13:20:26 +00:00
Mike Frysinger
2348f115c0 use CPPFLAGS rather than CFLAGS where appropriate and make LDFLAGS/-rpath dynamic by only enabling when in .svn repo 2007-04-13 13:06:53 +00:00
Mike Frysinger
5ee5f0c661 revert previous commit 2007-04-13 12:59:12 +00:00
Mike Frysinger
e3440c8ba3 dont create .so links as they arent needed for runtime 2007-04-13 12:55:43 +00:00
Mike Frysinger
51f43d5a53 use ln -sf rather than ln -s incase target exists 2007-04-13 12:39:14 +00:00
Mike Frysinger
21902ef882 add a symlink for update-rc -> rc-update 2007-04-13 12:38:00 +00:00
Roy Marples
a07be0513a s-s-d now allows --signal to be used without --stop and --oknodo. man page updated accordingly 2007-04-13 09:21:16 +00:00
Roy Marples
824e9577e7 Fix module loading, #174360. s-s-d now changes group when changing user, #174362. 2007-04-13 06:43:00 +00:00
Roy Marples
67c5d8e940 Style updates 2007-04-12 13:18:52 +00:00
Roy Marples
000f239534 Fix getopt a little 2007-04-12 10:40:51 +00:00
Roy Marples
2728cef0e1 Hug getopt_long even though it's not POSIX. start-stop-daemon has always required this and all our supported platforms have it. 2007-04-12 10:08:42 +00:00
Roy Marples
aff7b02dce Fix hotplugging of network cards 2007-04-11 14:52:13 +00:00
Roy Marples
e6674b2cae Cuddle up to LKML C style 2007-04-11 12:44:47 +00:00
Roy Marples
64c4d3875d Move carrier detection back into net.sh. Reserve a new hook numbers 2007-04-11 10:40:53 +00:00
Roy Marples
f754c661f5 Add new service hooks, remove pmake stuff from our Makefile and fix rc_services_in_state for scheduled. 2007-04-11 07:15:02 +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
240399534c int -> time_t 2007-04-10 14:03:37 +00:00
Roy Marples
d3db9e9910 Fix indentation 2007-04-10 11:24:58 +00:00
Roy Marples
0c98067d57 Misc network fixes so we work on my stable server. Splash plugin removed as splashtuils-1.4 now ships with its own. 2007-04-10 10:33:44 +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
049948eb09 Only use some gcc flags if gcc actually supports them. 2007-04-08 17:39:59 +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
a66136655e Move env-update back to /sbin as everything non baselayout expects it in $PATH, including our documentation 2007-04-07 10:38:40 +00:00
Roy Marples
6c29966364 We don't use err.h 2007-04-07 08:46:42 +00:00
Roy Marples
4e64558cbf Remove this until we can make it work properly - ie not hangup when cable goes in/out 2007-04-06 23:04:38 +00:00
Roy Marples
ab62a84790 snprintf is better 2007-04-06 08:37:15 +00:00
Roy Marples
9cd5742bec strcpy is bad 2007-04-06 08:24: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
6fb700e52c Superfluous CFLAGS 2007-04-05 11:42:21 +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