Systemd/src/shared
Lennart Poettering 6c12b52e19 core: add new "scope" unit type for making a unit of pre-existing processes
"Scope" units are very much like service units, however with the
difference that they are created from pre-existing processes, rather
than processes that systemd itself forks off. This means they are
generated programmatically via the bus API as transient units rather
than from static configuration read from disk. Also, they do not provide
execution-time parameters, as at the time systemd adds the processes to
the scope unit they already exist and the parameters cannot be applied
anymore.

The primary benefit of this new unit type is to create arbitrary cgroups
for worker-processes forked off an existing service.

This commit also adds a a new mode to "systemd-run" to run the specified
processes in a scope rather then a transient service.
2013-07-01 00:18:00 +02:00
..
linux execute: support syscall filtering using seccomp filters 2012-07-17 04:17:53 +02:00
Makefile build-sys: add stub makefiles to make emacs easier to use 2012-04-12 13:35:56 +02:00
MurmurHash3.c MurmurHash3: actually inline functions 2013-04-14 13:11:06 -04:00
MurmurHash3.h kdbus: generare bloom filters properly for messages we send 2013-04-14 17:49:18 +02:00
acl-util.c journald: DO recalculate the ACL mask, but only if it doesn't exist 2013-05-30 00:43:39 -04:00
acl-util.h journald: DO recalculate the ACL mask, but only if it doesn't exist 2013-05-30 00:43:39 -04:00
ask-password-api.c Use initalization instead of explicit zeroing 2013-04-05 19:50:57 -04:00
ask-password-api.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00
audit.c audit: since nspawn now sets CAP_AUDIT_CONTROL for containers we cannot user this anymore to skip audit session ID retrieval 2013-04-15 21:59:04 +02:00
audit.h audit: turn the audit fd into a static variable 2012-10-02 17:40:09 -04:00
calendarspec.c Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
calendarspec.h timer: implement calendar time events 2012-11-23 21:37:58 +01:00
capability.c util: rename write_one_line_file() to write_string_file() 2013-04-03 20:12:56 +02:00
capability.h capabilities: when dropping capabilities system-wide also drop them from usermode helpers 2012-05-29 23:35:17 +02:00
cgroup-label.c core: general cgroup rework 2013-06-27 04:17:34 +02:00
cgroup-show.c core: general cgroup rework 2013-06-27 04:17:34 +02:00
cgroup-show.h systemctl,loginctl,cgls: do not ellipsize cgroup members when --full is specified 2013-01-16 12:11:47 -05:00
cgroup-util.c core: add new "scope" unit type for making a unit of pre-existing processes 2013-07-01 00:18:00 +02:00
cgroup-util.h core: add new "scope" unit type for making a unit of pre-existing processes 2013-07-01 00:18:00 +02:00
conf-files.c catalog: open up catalog internals 2013-03-28 23:45:59 -04:00
conf-files.h catalog: open up catalog internals 2013-03-28 23:45:59 -04:00
conf-parser.c conf-parser: restrict .include usage 2013-04-25 00:05:14 -03:00
conf-parser.h conf-parser: restrict .include usage 2013-04-25 00:05:14 -03:00
dbus-common.c Allow for the use of @ in remote host calls 2013-06-09 18:26:41 -04:00
dbus-common.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
dbus-loop.c move _cleanup_ attribute in front of the type 2013-04-18 09:11:22 +02:00
dbus-loop.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00
def.h manager: Do not handle SIGKILL since we can not 2013-06-06 08:58:58 +02:00
dev-setup.c dev-setup: do not create a dangling /proc/kcore symlink 2013-06-10 08:50:59 -04:00
dev-setup.h dev-setup: allow a path prefix for use in chroots 2012-08-21 17:19:35 +02:00
efivars.c efivars: un-leak a few strings 2013-04-04 22:46:19 -04:00
efivars.h bootctl: print secure boot flags 2013-03-10 22:48:27 +01:00
env-util.c Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
env-util.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
exit-status.c service: add options RestartPreventExitStatus and SuccessExitStatus 2012-08-14 14:46:03 +02:00
exit-status.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
fdset.c shared: move fdset.c from core/ to shared/ since it is used by more than the core now 2012-12-23 11:28:14 +01:00
fdset.h shared: move fdset.c from core/ to shared/ since it is used by more than the core now 2012-12-23 11:28:14 +01:00
fileio-label.c util: rename write_one_line_file() to write_string_file() 2013-04-03 20:12:56 +02:00
fileio-label.h util: rename write_one_line_file() to write_string_file() 2013-04-03 20:12:56 +02:00
fileio.c core: general cgroup rework 2013-06-27 04:17:34 +02:00
fileio.h fileio: split write_one_line_file into two 2013-05-06 22:51:47 +02:00
hashmap.c binfmt,tmpfiles,modules-load,sysctl: rework the various early-boot services that work on .d/ directories 2013-02-11 23:54:30 +01:00
hashmap.h hashmap: document trivial_hash_func() 2013-05-07 17:52:23 +02:00
hwclock.c always unconditionally create /dev/rtc and use it internally 2013-04-26 01:11:52 +02:00
hwclock.h hwclock: always set the kernel's timezone 2012-09-17 16:56:26 +02:00
install-printf.c move _cleanup_ attribute in front of the type 2013-04-18 09:11:22 +02:00
install-printf.h install: allow specifiers in WantedBy/RequiredBy/Alias 2013-01-29 19:01:41 -05:00
install.c systemctl,core: allow nuking of symlinks to removed units 2013-06-03 13:55:17 -04:00
install.h systemctl: add commands set-default and get-default 2013-05-30 20:44:41 -04:00
ioprio.h move list.h, macro.h, ioprio.h to shared/ 2012-04-10 19:47:00 +02:00
label.c util: make time formatting a bit smarter 2013-04-04 02:56:56 +02:00
label.h honor SELinux labels, when creating and writing config files 2013-02-14 16:19:38 +01:00
list.h test: Add list testcase 2013-06-27 01:38:47 -04:00
log.c core/main: use _cleanup_ 2013-04-17 00:09:16 -04:00
log.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
logs-show.c journalctl: highlight MESSAGE= in verbose output 2013-06-26 19:52:00 -04:00
logs-show.h systemctl: limit logs in status to current boot 2013-06-04 09:59:06 -04:00
macro.h Add hasprefix macro to check prefixes of fixed length 2013-06-20 23:03:58 -04:00
missing.h Fix syscall(__NR_fanotify_mark, ...) on arm 2013-05-15 21:02:46 -04:00
mkdir.c core: general cgroup rework 2013-06-27 04:17:34 +02:00
mkdir.h core: general cgroup rework 2013-06-27 04:17:34 +02:00
output-mode.h systemctl,loginctl,cgls: do not ellipsize cgroup members when --full is specified 2013-01-16 12:11:47 -05:00
pager.c pager: add -M to $LESS to make the bottom line nicer 2013-03-07 21:43:28 +01:00
pager.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
path-lookup.c move _cleanup_ attribute in front of the type 2013-04-18 09:11:22 +02:00
path-lookup.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
path-util.c time-dst: use _cleanup_ 2013-05-02 22:55:38 -04:00
path-util.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
polkit.c build-sys: make PolicyKit support compile-time optional (was runtime-optional already) 2013-02-13 23:08:25 +01:00
polkit.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00
prioq.c Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
prioq.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
ratelimit.c ratelimit: fix off-by-one 2013-02-13 08:45:13 -05:00
ratelimit.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00
refcnt.h bus: make bus ref counting atomic 2013-05-16 21:58:34 +02:00
replace-var.c shared: add API for replacing @FOO@ style variables in strings 2012-11-14 22:21:16 +01:00
replace-var.h shared: add API for replacing @FOO@ style variables in strings 2012-11-14 22:21:16 +01:00
selinux-util.c build-sys: fix !HAVE_SELINUX case 2012-10-03 16:00:33 +02:00
selinux-util.h selinux: rework selinux access check logic 2012-10-02 17:07:00 -04:00
set.c Add set_consume which always takes ownership 2013-04-24 00:25:04 -04:00
set.h Add set_consume which always takes ownership 2013-04-24 00:25:04 -04:00
sleep-config.c systemd-sleep: it is not an error if the config file is missing 2013-05-07 11:47:50 -04:00
sleep-config.h systemd-sleep: add support for freeze and standby 2013-05-06 22:51:57 +02:00
socket-label.c Revert "Implement SocketUser= and SocketGroup= for [Socket]" 2012-11-06 09:54:17 -05:00
socket-util.c move _cleanup_ attribute in front of the type 2013-04-18 09:11:22 +02:00
socket-util.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
sparse-endian.h shared: move sparse-endian.h from journal 2012-10-22 18:08:48 +02:00
spawn-ask-password-agent.c move more common files to shared/ and add them to shared.la 2012-04-12 02:39:37 +02:00
spawn-ask-password-agent.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00
spawn-polkit-agent.c build-sys: make PolicyKit support compile-time optional (was runtime-optional already) 2013-02-13 23:08:25 +01:00
spawn-polkit-agent.h move more common files to shared/ and add them to shared.la 2012-04-12 02:39:37 +02:00
specifier.c Move generic specifier functions to shared 2013-01-29 19:01:41 -05:00
specifier.h Move generic specifier functions to shared 2013-01-29 19:01:41 -05:00
strbuf.c Fix spelling errors using 'codespell' tool 2013-04-15 08:40:05 -04:00
strbuf.h use the same email address everywhere 2012-11-12 19:47:43 +01:00
strv.c bus: implement 'unixexec:' protocol 2013-03-25 02:33:35 +01:00
strv.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
strxcpyx.c udev: move string copy functions to shared/ 2013-01-09 19:06:46 +01:00
strxcpyx.h udev: move string copy functions to shared/ 2013-01-09 19:06:46 +01:00
time-dst.c time-dst: use _cleanup_ 2013-05-02 22:55:38 -04:00
time-dst.h timedatectl: properly print 30 minutes DST transitions 2012-11-11 16:55:25 +01:00
time-util.c util: tweak format_timespan() a bit 2013-04-04 17:06:00 +02:00
time-util.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
unit-name.c core: add new "scope" unit type for making a unit of pre-existing processes 2013-07-01 00:18:00 +02:00
unit-name.h core: add new "scope" unit type for making a unit of pre-existing processes 2013-07-01 00:18:00 +02:00
utf8.c logs-show: print multiline messages 2013-06-09 13:49:38 -04:00
utf8.h logs-show: print multiline messages 2013-06-09 13:49:38 -04:00
util.c journalctl: allow the user to specify the file(s) to use 2013-06-10 10:10:07 -04:00
util.h journalctl: allow the user to specify the file(s) to use 2013-06-10 10:10:07 -04:00
utmp-wtmp.c Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
utmp-wtmp.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00
virt.c move _cleanup_ attribute in front of the type 2013-04-18 09:11:22 +02:00
virt.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00
watchdog.c util: make time formatting a bit smarter 2013-04-04 02:56:56 +02:00
watchdog.h use #pragma once instead of foo*foo #define guards 2012-07-19 12:30:59 +02:00