| /[baselayout]/trunk/src/rc.h |
Parent Directory
|
Revision Log
inline rc_xmalloc, rc_xrealloc and rc_xstrdup so that the library doesn't expose them.
LS_DIRS -> LS_DIR
Punt rc_exists from public interface, move to private static inline
Punt rc_is_dir
punt rc_is_exec
punt rc_is_link
Punt rc_is_file
document rc_deptree_depends
Revert making function private
__rc_service_daemon_set is now a private function
depinfo and deptype are now internal use only. rc-depend cuddles up to getopt.
rc_make_env -> rc_env_config, rc_filter_env -> rc_env_filter
Rename config funcs
reorg our header a little
rc_service_option_set -> rc_service_value_set, rc_service_option_get -> rc_service_value_get
rc_schedule_clear -> rc_service_schedule_clear, rc_schedule_start_service -> rc_service_schedule_start
reorder header a little
rc_get_runlevels -> rc_runlevel_list
rc_allow_plug -> rc_service_plugable
rc_set_service_daemon -> rc_service_daemon_set
rc_set_service_option -> rc_service_option_set, rc_get_service_option -> rc_service_option_get
rc_wait_service -> rc_service_wait
Rationalise more functions into rc_service_
librc no longer uses libeinfo. deptree function names are now all under rc_deptree_
Crashed is not a baselayout state as such
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.
enums are now fixed to specific values and are in UPPER CASE.
The rc_depinfo_t and rc_deptype_t structures are not for public consumption.
rc_is_env is now rc_env_bool and just works with boolean values.
Use bools
Revert last patch
We no longer use bool in our public headers, using int instead.
Initial doxygen documentation for rc.h and einfo.h. Plus some header clean ups.
Punt rc_xcalloc as nothing uses it
Don't be an ass - don't free the 2nd list. Instead just empty it.
Clarify strlist_join behaviour
Match the recent api change to rc_strlist_join also. We now free the 2nd list for ease of use.
API change! rc_config_env is renamed to rc_make_env and takes no argument.
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.
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);
`config /etc/fstab' can now be used in depend() functions to show that
the deptree should be regenerated if /etc/fstab has changed.
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.
Wups, these definitions need to be in rc.h really
All our binaries are now mulicalls into rc, which makes our on disk size
a lot smaller.
Don't use 'this' as a variable name as it confuses c++
Rename variable
init scripts and their extra options can now have descriptions, #184327.
We no longer care about numerical runlevels, #184733.
env-update now respects COLON_SEPARATED and SPACE_SEPARATED env.d values, #176198.
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.
Fix rc-abort to notify the plugins we are aborting
Plugins now run in a forked process for extra resliance.
Style updates
Cuddle up to LKML C style
Move carrier detection back into net.sh. Reserve a new hook numbers
Add new service hooks, remove pmake stuff from our Makefile and fix rc_services_in_state for scheduled.
Fix indentation
We now compile on OpenBSD (no idea if it works or not yet)
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.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
| ViewVC Help | |
| Powered by ViewVC 1.1.20 |