aboutsummaryrefslogtreecommitdiff
path: root/src/librc/rc.h.in
AgeCommit message (Collapse)Author
2023-10-19openrc-pam: add loading user environment.Anna (navi) Figueiredo Gomes
openrc-pam now sets XDG_RUNTIME_DIR in case it's unset. after running openrc --user, it'll look at ${XDG_RUNTIME_DIR}/openrc/env for exported variables by services, and only set those allowed by RC_USER_ENV_WHITELIST and RC_USER_ENV_WHITELIST_D. this is to protect pam from variables being set under user control that could mess with other modules. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2023-10-19openrc-run: in user mode, change to homedir instead of /Anna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2023-10-19openrc: rework pathing functionsAnna (navi) Figueiredo Gomes
this simplifies the allocation of path string. also fixes some memory leaks from the ealier commit also changes the log path for users to XDG_CACHE_HOME, default ~/.cache/openrc Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2023-10-19librc: Move sysconf dir to ~/.config/openrc/...Anna (navi) Figueiredo Gomes
Also add ~/.local/share/openrc for data files (like logs) This is done to help avoid name conflictions for anything else that might create/user files in .config/ Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2023-10-19librc: Allow user to override system-wide rc.confAnna (navi) Figueiredo Gomes
This change read a user version of rc.conf, to be located in `~/.config/rc.conf`. The user version is loaded first, so it has priority, thus overriding the system settings. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2023-10-19librc: skeleton of user services supportAnna (navi) Figueiredo Gomes
Those functions allocates and set up the environment for user services. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2022-05-08librc: mark rc_deptree_* functions as mallocsSam James
(This is analogous to the rc_stringlist change.) This gives a hint to the compiler that allocations (return values) from this function should be paired with a corresponding dealloc/free function. Signed-off-by: Sam James <sam@gentoo.org>
2022-05-08librc: mark stringlist functions as warn_unused_resultSam James
Signed-off-by: Sam James <sam@gentoo.org>
2022-05-08librc: mark stringlist functions as mallocsSam James
This gives a hint to the compiler that allocations (return values) from this function should be paired with a corresponding dealloc/free function In this case, it means that every rc_stringlist that rc_stringlist_new() returns should eventually be freed by calling rc_stringlist_free(ptr) where ptr is the relevant rc_stringlist. We have to add a test for this into the build system because only GCC supports this for now. In future, we might be able to use meson's has_function_attribute (it does support 'malloc', just not AFAICT 'malloc with arguments'). Signed-off-by: Sam James <sam@gentoo.org>
2022-04-30multiple spelling and typo fixesJosh Soref
This fixes #516.
2021-12-20use HEAD in git URIs to point to the default branchMike Frysinger
This makes the URIs shorter and dynamic: whatever the default branch the repo uses will be used.
2018-05-22librc: Add crashed stateWilliam Hubbs
2017-04-06add init processWilliam Hubbs
openrc-init.c and openrc-shutdown.c are based on code which was written by James Hammons <jlhamm@acm.org>, so I would like to publically thank him for his work.
2016-01-19librc: fix handling the nothing special case for rc_sysDoug Freed
2015-12-21Convert OpenRC to a centralized copyright/license structureWilliam Hubbs
In the past, OpenRC was a hybrid of a centralized and file-scope license/copyright structure. I followed the instructions from the Software Freedom Law Center [1] to convert to a Centralized structure where possible, for easier future maintenance. [1] https://softwarefreedom.org/resources/2012/ManagingCopyrightInformation.html
2015-12-02Add detection for rkt containersWilliam Hubbs
2015-12-02Add detection for docker containersWilliam Hubbs
2015-12-01librc: comsolidate rc_sys_v1 and rc_sys_v2 into rc_sysWilliam Hubbs
These functions were never meant to be used outside of OpenRC, and they were added when we thought we were going to do away with the automatic detection of subsystems. Since the autodetection is not going away, we can combine these functions into rc_sys.
2015-11-05Add rc.conf.d supportWilliam Hubbs
This makes it possible to override settings in rc.conf by adding a directory @SYSCONFDIR@/rc.conf.d and putting files in this directory. The files will be processed in lexical order, and the last setting in these files will be used.
2015-05-01Add support for systemd-nspawn containersWilliam Hubbs
This adds support for running OpenRC in a container created by the systemd-nspawn utility. This fixes #52. X-Gentoo-Bug: 548058 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=548058
2014-10-24Fix compile errors created by bundling queue.hWilliam Hubbs
2014-10-23Bundle <sys/queue.h> from NetBSDAnthony G. Basile
We are bundling this to allow building on musl-based systems since musl does not include <sys/queue.h>.
2014-10-23Fix all tests for GNU/kFreeBSDWilliam Hubbs
It is necessary to check for both the kernel and c library because __FreeBSD_kernel is also defined on native FreeBSD [1]. [1] http://sourceforge.net/p/predef/wiki/OperatingSystems/
2014-10-23Fix rc_svcdir for GNU/HurdGabriele Giacone
2014-10-22Fix rc_svcdir for GNU/kFreeBSDGabriele Giacone
2014-10-22einfo.h, rc.h.in: simplify __BEGIN_DECLS logicAnthony G. Basile
There is no need to redefine __BEGIN_DECLS and __END_DECLS. We simplify the logic here and avoid undefining these macros.
2014-10-21einfo.h, rc.h.in: ensure __BEGIN_DECLS is definedAnthony G. Basile
Some Standard C Libraries, like musl, don't define __BEGIN_DECLS or __END_DECLS. We add some ifdef magic to ensure these are available.
2012-12-03Do not add a prefix to the /run directoryWilliam Hubbs
This doesn't affect us on gentoo, but on archlinux, which has done the /usr merge, OpenRC was looking for /run under PREFIX. /run is always at the root level, so it shouldn't have prefix appended to it. Reported-by: udeved@openrc4arch.site40.net
2012-09-20fix RC_SVCDIR on prefix systemsWilliam Hubbs
On prefix systems, RC_SVCDIR was being defined based on the host operating system. This is not correct because there will not be a /run directory in a prefix. This commit moves RC_SVCDIR on prefix systems to the same location as on non-Linux systems.
2012-09-09add RC_PREFIX environment variableWilliam Hubbs
This will be used by init scripts which want to be able to run in a Gentoo Prefix installation. RC_PREFIX will contain the prefix offset.
2012-07-26Bring Back prefix supportWilliam Hubbs
We now have a team member who is interested in OpenRC on prefix, so I am bringing it back to the main tree.
2012-05-14move rc_svcdir to /run/openrc on Linux systemsWilliam Hubbs
If you are not using linux, this should not affect you. If you are using linux, from this point forward, openrc requires the /run directory to be a mounted tmpfs. If it is, you can run @LIBEXECDIR@/sh/migrate-to-run.sh as root to migrate your dependency tree and state information to the new location. If it is not, you must create the /run directory as root with permissions 755 then reboot your system. reported-by: Maxim Kammerer <mk@dee.su> X-Gentoo-Bug: 401059 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=401059
2012-02-25librc: make rc_proc_getent available for all operating systemsWilliam Hubbs
This looks up an option on the kernel command line. For now, itworks on linux and returns NULL on the bsds, but we are definitely open to patches for that side.
2012-02-21Remove prefix supportWilliam Hubbs
I spoke with the prefix team sometime back and was told that they do not have an interest in using OpenRC on prefix systems.
2012-01-15Rename proc_getent to rc_proc_getent and make it globalChristian Ruppert
2011-07-13Add a new function, bool rc_getfile(const char *, char **, size_t *)Mike Frysinger
<snip> Read the entire @file into the buffer and set @len to the size of the buffer when finished. For C strings, this will be strlen(buffer) + 1. Don't forget to free the buffer afterwards! </snip> We also fix bug 374899 by adding this new function. X-Gentoo-Bug: 374899 X-Gentoo-Bug-URL: http://bugs.gentoo.org/374899
2011-06-29drop useless "All rights reserved" noticeMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-17Bug #351570: Hidden function fixes: rc_conf_value.Robin H. Johnson
Refactor rc_conf_value into librc for use in library context. Also requires moving: - rc_conf internal static - Defines: PROFILE_ENV, SYS_WHITELIST, USR_WHITELIST, RC_PATH_PREFIX moved to rc.h with new RC_ prefix added. - Defines: RC_CONF, RC_CONF_OLD moved to rc.h. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2011-01-17Clean up all trailing whitespace in src/.Robin H. Johnson
2011-01-17Factor out new function rc_deptree_load_file to aid in debugging deptree ↵Robin H. Johnson
files from users. Loads from a given filename instead of the hardcoded RC_DEPTREE_CACHE define.
2011-01-05Implement explicit selection of subsystem types.Robin H. Johnson
- Fixes bugs #347583, #349389, both of which were triggered by cgroups being detected as the LXC subsystem type. - Makes it much easier to select "prefix" type. - "rc -S" will now print a warning if you have not configured rc_sys in /etc/rc.conf - All other semantics of rc_sys are unchanged in this patch. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2010-01-08random spelling fixesMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-11-04Add support for Linux Containers, fixes #202.Roy Marples
Patch by bug reporter.
2009-06-21Use rc_getline instead of assuming a fixed kernel cmdline length.Roy Marples
This is now requires as COMMAND_LINE_SIZE isn't exposed by kernel headers anymore. Fixes #177.
2009-05-23Move non compiled libraries from /lib/rc to /libexec/rcRoy Marples
OpenRC version is now stored as plaintext in /libexec/rc/version Plugins (cursplash, splashutils) will have to be re-compiled to pickup the new directories. State data needs to be moved from /lib/rc/init.d to /libexec/rc/init.d as well.
2009-05-02Add runlevel stacking, #88Roy Marples
This implementation has the limitation that you cannot have a stacked runlevel and service of the same name in a runlevel.
2009-05-01Add (c) to CopyrightRoy Marples
2009-01-13rc_newer/older_than only report file if time_t is a pointer, so itRoy Marples
should take precedence in the argument list.
2009-01-12We now warn about clock skewsRoy Marples
rc-update -u will force a regen of the dep tree rc_newer_than and rc_olderthan now take another two parameters for newest/oldest file and mtime
2008-11-03Add a new shutdown runlevel, Gentoo #224537.Roy Marples
Split halt.sh into halt, killprocs, romount and savecache services. The reboot runlevel is removed but mapped to shutdown. The halt script should be moved to the sysvinit package.