Commit Graph

35 Commits

Author SHA1 Message Date
Roy Marples
837f43e163 librc no longer uses libeinfo. deptree function names are now all under rc_deptree_ 2007-09-29 16:42:08 +00:00
Roy Marples
fc1bfe4234 Crashed is not a baselayout state as such 2007-09-28 15:04:15 +00:00
Roy Marples
7274301be2 rc_service_state now returns the state as a mask, which means that we can do things with just the one call making is more efficient. 2007-09-28 14:53:38 +00:00
Roy Marples
6f7f447978 enums are now fixed to specific values and are in UPPER CASE. 2007-09-28 12:29:23 +00:00
Mike Frysinger
f0c7e8e02f add hidden definition for rc_waitpid() 2007-09-26 08:39:16 +00:00
Roy Marples
c6c7df47a0 Revert last patch 2007-09-25 17:30:07 +00:00
Roy Marples
1a6451654f We no longer use bool in our public headers, using int instead. 2007-09-25 17:19:02 +00:00
Roy Marples
1e4e8ed27a Initial doxygen documentation for rc.h and einfo.h. Plus some header clean ups. 2007-09-25 15:38:21 +00:00
Roy Marples
45bd125dcc Use a pty for prefixed output instead of pipes for stdout/stderr. This
is so that programs can get information about the controlling terminal.
This change was triggered by bug #188506 where it's possible that
stdin, stdout and stderr didn't point to a terminal but ended up on one
via our pipes. Using a pty means that stdout and stderr always point to
a terminal, but we lose the ability to tell them apart.
If there is not a pty available then we use un-prefixed output as normal.
This change has also introduced the need for a signal pipe so that
SIGCHLD can exit the loop cleanly.
2007-09-21 08:49:43 +00:00
Roy Marples
936dc94351 API change! rc_ls_dir, rc_get_config and rc_get_list no longer take
a starting list as a first argument. Instead, use rc_strlist_join
to append or prepend the new list to an existing list.
2007-09-18 12:04:51 +00:00
Roy Marples
f1bba12892 API change! rc_strlist_add and friends now take char *** instead of
char ** and return a pointer to the item added instead of the new
list head. This is so we can easily tell if the item was successfully
added or not instead of iterating through the list looking for it.

list = rc_strlist_add (list, item);
becomes
rc_strlist_add (&list, item);
2007-09-18 11:36:55 +00:00
Roy Marples
d095d4d8f5 strdup -> rc_xstrdup 2007-09-06 08:59:35 +00:00
Roy Marples
d6acd7d83e Move more stuff to #defines 2007-08-28 09:13:46 +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
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
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
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
46cd245ee3 Use clock MONOTONIC to timeout, not localtime, #177514 2007-05-11 08:58:19 +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
c1d6bfc721 Don't abort select when on signals 2007-04-25 18:12:49 +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
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
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
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
Roy Marples
e6674b2cae Cuddle up to LKML C style 2007-04-11 12:44:47 +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
d3db9e9910 Fix indentation 2007-04-10 11:24:58 +00:00
Roy Marples
9cd5742bec strcpy is bad 2007-04-06 08:24:48 +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