Systemd/src
Zbigniew Jędrzejewski-Szmek c4708f1323 tmpfiles: introduce the concept of unsafe operations
Various operations done by systemd-tmpfiles may only be safely done at
boot (e.g. removal of X lockfiles in /tmp, creation of /run/nologin).
Other operations may be done at any point in time (e.g. setting the
ownership on /{run,var}/log/journal). This distinction is largely
orthogonal to the type of operation.

A new switch --unsafe is added, and operations which should only be
executed during bootup are marked with an exclamation mark in the
configuration files. systemd-tmpfiles.service is modified to use this
switch, and guards are added so it is hard to re-start it by mistake.

If we install a new version of systemd, we actually want to enforce
some changes to tmpfiles configuration immediately. This should now be
possible to do safely, so distribution packages can be modified to
execute the "safe" subset at package installation time.

/run/nologin creation is split out into a separate service, to make it
easy to override.

https://bugzilla.redhat.com/show_bug.cgi?id=1043212
https://bugzilla.redhat.com/show_bug.cgi?id=1045849
2013-12-24 15:48:06 -05:00
..
ac-power unit: add ConditionACPower= 2012-12-31 21:24:26 +01:00
activate activate: fix error checking on epoll_ctl() 2013-12-17 15:42:33 +01:00
analyze trivial coding style clean ups 2013-12-03 22:27:45 +01:00
ask-password clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
backlight Remove duplicate includes 2013-11-18 20:28:55 -05:00
binfmt log: log_error() and friends add a newline after each line anyway, so avoid including it in the log strings 2013-12-24 16:39:37 +01:00
boot bootctl: remove unused options from getopt_long 2013-11-09 14:11:56 +01:00
bootchart log: log_error() and friends add a newline after each line anyway, so avoid including it in the log strings 2013-12-24 16:39:37 +01:00
bus-driverd bus: fix return message if StartServiceByName() in the driver fails due 2013-12-24 18:42:38 +01:00
bus-proxyd log: log_error() and friends add a newline after each line anyway, so avoid including it in the log strings 2013-12-24 16:39:37 +01:00
cgls clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
cgroups-agent cgroups-agent: down-grade log level 2013-11-25 17:40:53 +01:00
cgtop clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
core util: unify SO_PEERCRED/SO_PEERSEC invocations 2013-12-24 15:53:04 +01:00
cryptsetup util: unify reading of /proc/cmdline 2013-11-06 03:15:16 +01:00
dbus1-generator bus: also mask dbus.service in generator if kdbus is found 2013-12-16 21:06:57 +01:00
delta delta: if prefix is specified, only show overrides there 2013-12-22 22:54:15 -05:00
detect-virt clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
efi-boot-generator efi-boot-generator: don't mount /boot eagerly 2013-11-21 12:36:05 +01:00
fsck fsck,fstab-generator: be lenient about missing fsck.<type> 2013-11-15 22:53:14 -05:00
fstab-generator fstab-generator: Do not try to fsck non-devices 2013-12-21 22:52:56 -05:00
getty-generator getty-generator: fix stripping /dev/ 2013-12-13 23:24:16 +01:00
gpt-auto-generator fix scan-build issues 2013-12-10 22:30:46 +01:00
gudev licence: remove references to old FSF address 2012-12-17 11:41:31 +01:00
hostname bus: fix exit-on-idle for driverd 2013-12-19 22:18:39 +01:00
initctl trivial coding style clean ups 2013-12-03 22:27:45 +01:00
journal log: log_error() and friends add a newline after each line anyway, so avoid including it in the log strings 2013-12-24 16:39:37 +01:00
kernel-install kernel-install: fix help output 2013-12-09 23:19:16 -05:00
libsystemd-bus bus: properly shift cgroup data returned from kdbus by the container's root before parsing 2013-12-24 19:31:44 +01:00
libsystemd-daemon sd-daemon: introduce sd_watchdog_enabled() for parsing $WATCHDOG_USEC 2013-12-22 22:19:03 +01:00
libsystemd-dhcp shared: switch our hash table implementation over to SipHash 2013-12-22 21:12:25 +01:00
libsystemd-id128 __thread --> thread_local for C11 compat 2013-12-17 21:45:43 +01:00
libsystemd-rtnl rtnl: correctly get the size of data to be appended 2013-12-19 21:39:45 +01:00
libudev libudev: ship the original MurmurHash2.[ch] file 2013-12-23 02:55:06 +01:00
locale bus: fix exit-on-idle for driverd 2013-12-19 22:18:39 +01:00
login util: unify SO_PEERCRED/SO_PEERSEC invocations 2013-12-24 15:53:04 +01:00
machine machinectl: fix success check when getting pty from within container 2013-12-23 20:25:57 +01:00
machine-id-setup clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
modules-load log: log_error() and friends add a newline after each line anyway, so avoid including it in the log strings 2013-12-24 16:39:37 +01:00
network core,logind,networkd: check for udev device initialization via enumeration matches 2013-12-18 18:21:28 +01:00
notify clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
nspawn DEFAULT_PATH_SPLIT_USR macro 2013-12-20 23:14:21 -05:00
nss-myhostname Remove duplicate includes 2013-11-18 20:28:55 -05:00
python-systemd trivial coding style clean ups 2013-12-03 22:27:45 +01:00
quotacheck util: unify reading of /proc/cmdline 2013-11-06 03:15:16 +01:00
random-seed random-seed: improve debugging messages a bit 2013-11-15 22:53:14 -05:00
rc-local-generator rc-local: use access(X_OK) to check if files are executable 2013-10-29 19:34:59 +01:00
readahead clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
remount-fs Introduce _cleanup_endmntent_ 2013-10-03 22:13:55 -04:00
reply-password Use initalization instead of explicit zeroing 2013-04-05 19:50:57 -04:00
rfkill rfkill: Avoid error when state restore is disabled 2013-12-06 16:44:38 +01:00
run logind,machined,run: properly invoke StartTransientUnit() bus call 2013-11-21 21:12:36 +01:00
shared bus: properly shift cgroup data returned from kdbus by the container's root before parsing 2013-12-24 19:31:44 +01:00
shutdownd Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
sleep Fix a few resource leaks in error paths 2013-12-15 17:49:28 -05:00
socket-proxy event: be more conservative when returning errors from event handler callbacks 2013-12-13 04:06:43 +01:00
sysctl log: log_error() and friends add a newline after each line anyway, so avoid including it in the log strings 2013-12-24 16:39:37 +01:00
system-update-generator Standarize on one spelling of symlink error message 2013-04-24 00:25:04 -04:00
systemctl systemctl: also color filenames of drop-ins in cat 2013-12-22 18:55:01 -05:00
systemd sd-daemon: introduce sd_watchdog_enabled() for parsing $WATCHDOG_USEC 2013-12-22 22:19:03 +01:00
test bus: properly shift cgroup data returned from kdbus by the container's root before parsing 2013-12-24 19:31:44 +01:00
timedate bus: fix exit-on-idle for driverd 2013-12-19 22:18:39 +01:00
tmpfiles tmpfiles: introduce the concept of unsafe operations 2013-12-24 15:48:06 -05:00
tty-ask-password-agent clients: unify how we invoke getopt_long() 2013-11-06 18:28:39 +01:00
udev log: log_error() and friends add a newline after each line anyway, so avoid including it in the log strings 2013-12-24 16:39:37 +01:00
update-utmp bus: use new property retrieval calls everywhere 2013-11-07 22:17:19 +01:00
vconsole move _cleanup_ attribute in front of the type 2013-04-18 09:11:22 +02:00
.gitignore Add test coverage and generate report with lcov 2013-07-13 21:56:33 -04:00
Makefile