History log of /systemd/src/core/unit.c
Revision Date Author Comments Expand
50f48ad37aad99c54de4db34b07c3825cdedcf41 10-Feb-2016 Daniel Mack <daniel@zonque.org>

cgroup: remove support for NetClass= directive Support for net_cls.class_id through the NetClass= configuration directive has been added in v227 in preparation for a per-unit packet filter mechanism. However, it turns out the kernel people have decided to deprecate the net_cls and net_prio controllers in v2. Tejun provides a comprehensive justification for this in his commit, which has landed during the merge window for kernel v4.5: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=bd1060a1d671 As we're aiming for full support for the v2 cgroup hierarchy, we can no longer support this feature. Userspace tool such as nftables are moving over to setting rules that are specific to the full cgroup path of a task, which obsoletes these controllers anyway. This commit removes support for tweaking details in the net_cls controller, but keeps the NetClass= directive around for legacy compatibility reasons.

b26fa1a2fbcfee7d03b0c8fd15ec3aa64ae70b9f 10-Feb-2016 Daniel Mack <daniel@zonque.org>

tree-wide: remove Emacs lines from all files This should be handled fine now by .dir-locals.el, so need to carry that stuff in every file.

/systemd/src/ac-power/ac-power.c /systemd/src/activate/activate.c /systemd/src/analyze/analyze-verify.c /systemd/src/analyze/analyze-verify.h /systemd/src/analyze/analyze.c /systemd/src/ask-password/ask-password.c /systemd/src/backlight/backlight.c /systemd/src/basic/af-list.c /systemd/src/basic/af-list.h /systemd/src/basic/alloc-util.c /systemd/src/basic/alloc-util.h /systemd/src/basic/arphrd-list.c /systemd/src/basic/arphrd-list.h /systemd/src/basic/async.c /systemd/src/basic/async.h /systemd/src/basic/audit-util.c /systemd/src/basic/audit-util.h /systemd/src/basic/barrier.c /systemd/src/basic/barrier.h /systemd/src/basic/bitmap.c /systemd/src/basic/bitmap.h /systemd/src/basic/blkid-util.h /systemd/src/basic/btrfs-ctree.h /systemd/src/basic/btrfs-util.c /systemd/src/basic/btrfs-util.h /systemd/src/basic/build.h /systemd/src/basic/bus-label.c /systemd/src/basic/bus-label.h /systemd/src/basic/calendarspec.c /systemd/src/basic/calendarspec.h /systemd/src/basic/cap-list.c /systemd/src/basic/cap-list.h /systemd/src/basic/capability-util.c /systemd/src/basic/capability-util.h /systemd/src/basic/cgroup-util.c /systemd/src/basic/cgroup-util.h /systemd/src/basic/chattr-util.c /systemd/src/basic/chattr-util.h /systemd/src/basic/clock-util.c /systemd/src/basic/clock-util.h /systemd/src/basic/conf-files.c /systemd/src/basic/conf-files.h /systemd/src/basic/copy.c /systemd/src/basic/copy.h /systemd/src/basic/cpu-set-util.c /systemd/src/basic/cpu-set-util.h /systemd/src/basic/def.h /systemd/src/basic/device-nodes.c /systemd/src/basic/device-nodes.h /systemd/src/basic/dirent-util.c /systemd/src/basic/dirent-util.h /systemd/src/basic/env-util.c /systemd/src/basic/env-util.h /systemd/src/basic/errno-list.c /systemd/src/basic/errno-list.h /systemd/src/basic/escape.c /systemd/src/basic/escape.h /systemd/src/basic/ether-addr-util.c /systemd/src/basic/ether-addr-util.h /systemd/src/basic/exit-status.c /systemd/src/basic/exit-status.h /systemd/src/basic/extract-word.c /systemd/src/basic/extract-word.h /systemd/src/basic/fd-util.c /systemd/src/basic/fd-util.h /systemd/src/basic/fdset.c /systemd/src/basic/fdset.h /systemd/src/basic/fileio-label.c /systemd/src/basic/fileio-label.h /systemd/src/basic/fileio.c /systemd/src/basic/fileio.h /systemd/src/basic/fs-util.c /systemd/src/basic/fs-util.h /systemd/src/basic/glob-util.c /systemd/src/basic/glob-util.h /systemd/src/basic/hash-funcs.c /systemd/src/basic/hash-funcs.h /systemd/src/basic/hashmap.c /systemd/src/basic/hashmap.h /systemd/src/basic/hexdecoct.c /systemd/src/basic/hexdecoct.h /systemd/src/basic/hostname-util.c /systemd/src/basic/hostname-util.h /systemd/src/basic/in-addr-util.c /systemd/src/basic/in-addr-util.h /systemd/src/basic/io-util.c /systemd/src/basic/io-util.h /systemd/src/basic/json.c /systemd/src/basic/json.h /systemd/src/basic/label.c /systemd/src/basic/label.h /systemd/src/basic/list.h /systemd/src/basic/locale-util.c /systemd/src/basic/locale-util.h /systemd/src/basic/lockfile-util.c /systemd/src/basic/lockfile-util.h /systemd/src/basic/log.c /systemd/src/basic/log.h /systemd/src/basic/login-util.c /systemd/src/basic/login-util.h /systemd/src/basic/macro.h /systemd/src/basic/memfd-util.c /systemd/src/basic/memfd-util.h /systemd/src/basic/mempool.c /systemd/src/basic/mempool.h /systemd/src/basic/missing.h /systemd/src/basic/mkdir-label.c /systemd/src/basic/mkdir.c /systemd/src/basic/mkdir.h /systemd/src/basic/mount-util.c /systemd/src/basic/mount-util.h /systemd/src/basic/nss-util.h /systemd/src/basic/ordered-set.h /systemd/src/basic/parse-util.c /systemd/src/basic/parse-util.h /systemd/src/basic/path-util.c /systemd/src/basic/path-util.h /systemd/src/basic/prioq.c /systemd/src/basic/prioq.h /systemd/src/basic/proc-cmdline.c /systemd/src/basic/proc-cmdline.h /systemd/src/basic/ratelimit.c /systemd/src/basic/ratelimit.h /systemd/src/basic/refcnt.h /systemd/src/basic/replace-var.c /systemd/src/basic/replace-var.h /systemd/src/basic/rlimit-util.c /systemd/src/basic/rlimit-util.h /systemd/src/basic/rm-rf.c /systemd/src/basic/rm-rf.h /systemd/src/basic/selinux-util.c /systemd/src/basic/selinux-util.h /systemd/src/basic/set.h /systemd/src/basic/sigbus.c /systemd/src/basic/sigbus.h /systemd/src/basic/signal-util.c /systemd/src/basic/signal-util.h /systemd/src/basic/smack-util.c /systemd/src/basic/smack-util.h /systemd/src/basic/socket-label.c /systemd/src/basic/socket-util.c /systemd/src/basic/socket-util.h /systemd/src/basic/special.h /systemd/src/basic/stat-util.c /systemd/src/basic/stat-util.h /systemd/src/basic/stdio-util.h /systemd/src/basic/strbuf.c /systemd/src/basic/strbuf.h /systemd/src/basic/string-table.c /systemd/src/basic/string-table.h /systemd/src/basic/string-util.c /systemd/src/basic/string-util.h /systemd/src/basic/strv.c /systemd/src/basic/strv.h /systemd/src/basic/strxcpyx.c /systemd/src/basic/strxcpyx.h /systemd/src/basic/syslog-util.c /systemd/src/basic/syslog-util.h /systemd/src/basic/time-util.c /systemd/src/basic/time-util.h /systemd/src/basic/umask-util.h /systemd/src/basic/unaligned.h /systemd/src/basic/unit-name.c /systemd/src/basic/unit-name.h /systemd/src/basic/user-util.c /systemd/src/basic/user-util.h /systemd/src/basic/utf8.c /systemd/src/basic/utf8.h /systemd/src/basic/util.c /systemd/src/basic/util.h /systemd/src/basic/verbs.c /systemd/src/basic/verbs.h /systemd/src/basic/virt.c /systemd/src/basic/virt.h /systemd/src/basic/web-util.c /systemd/src/basic/web-util.h /systemd/src/basic/xattr-util.c /systemd/src/basic/xattr-util.h /systemd/src/basic/xml.c /systemd/src/basic/xml.h /systemd/src/binfmt/binfmt.c /systemd/src/boot/bootctl.c /systemd/src/boot/efi/boot.c /systemd/src/boot/efi/console.c /systemd/src/boot/efi/console.h /systemd/src/boot/efi/disk.c /systemd/src/boot/efi/disk.h /systemd/src/boot/efi/graphics.c /systemd/src/boot/efi/graphics.h /systemd/src/boot/efi/linux.c /systemd/src/boot/efi/linux.h /systemd/src/boot/efi/pefile.c /systemd/src/boot/efi/pefile.h /systemd/src/boot/efi/splash.c /systemd/src/boot/efi/splash.h /systemd/src/boot/efi/stub.c /systemd/src/boot/efi/util.c /systemd/src/boot/efi/util.h /systemd/src/bootchart/bootchart.c /systemd/src/bootchart/bootchart.h /systemd/src/bootchart/store.c /systemd/src/bootchart/store.h /systemd/src/bootchart/svg.c /systemd/src/bootchart/svg.h /systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/bus-xml-policy.c /systemd/src/bus-proxyd/bus-xml-policy.h /systemd/src/bus-proxyd/driver.c /systemd/src/bus-proxyd/driver.h /systemd/src/bus-proxyd/proxy.c /systemd/src/bus-proxyd/proxy.h /systemd/src/bus-proxyd/stdio-bridge.c /systemd/src/bus-proxyd/synthesize.c /systemd/src/bus-proxyd/synthesize.h /systemd/src/bus-proxyd/test-bus-xml-policy.c /systemd/src/cgls/cgls.c /systemd/src/cgroups-agent/cgroups-agent.c /systemd/src/cgtop/cgtop.c audit-fd.c audit-fd.h automount.c automount.h bus-endpoint.h bus-policy.h busname.c busname.h cgroup.c cgroup.h dbus-automount.c dbus-automount.h dbus-busname.c dbus-busname.h dbus-cgroup.c dbus-cgroup.h dbus-device.c dbus-device.h dbus-execute.c dbus-execute.h dbus-job.c dbus-job.h dbus-kill.c dbus-kill.h dbus-manager.c dbus-manager.h dbus-mount.c dbus-mount.h dbus-path.c dbus-path.h dbus-scope.c dbus-scope.h dbus-service.c dbus-service.h dbus-slice.c dbus-slice.h dbus-socket.c dbus-socket.h dbus-swap.c dbus-swap.h dbus-target.c dbus-target.h dbus-timer.c dbus-timer.h dbus-unit.c dbus-unit.h dbus.c dbus.h device.c device.h execute.c execute.h failure-action.c failure-action.h hostname-setup.c hostname-setup.h ima-setup.c ima-setup.h job.c job.h kill.c kill.h killall.c killall.h kmod-setup.c kmod-setup.h load-dropin.c load-dropin.h load-fragment.c load-fragment.h locale-setup.c locale-setup.h loopback-setup.c loopback-setup.h machine-id-setup.c machine-id-setup.h main.c manager.c manager.h mount-setup.c mount-setup.h mount.c mount.h namespace.c namespace.h path.c path.h scope.c scope.h selinux-access.c selinux-access.h selinux-setup.c selinux-setup.h service.c service.h show-status.c show-status.h shutdown.c slice.c slice.h smack-setup.c smack-setup.h socket.c socket.h swap.c swap.h target.c target.h timer.c timer.h transaction.c transaction.h umount.c umount.h unit-printf.c unit-printf.h unit.c unit.h /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/dbus1-generator/dbus1-generator.c /systemd/src/debug-generator/debug-generator.c /systemd/src/delta/delta.c /systemd/src/detect-virt/detect-virt.c /systemd/src/escape/escape.c /systemd/src/firstboot/firstboot.c /systemd/src/fsck/fsck.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/getty-generator/getty-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/hibernate-resume/hibernate-resume-generator.c /systemd/src/hibernate-resume/hibernate-resume.c /systemd/src/hostname/hostnamectl.c /systemd/src/hostname/hostnamed.c /systemd/src/import/aufs-util.c /systemd/src/import/aufs-util.h /systemd/src/import/curl-util.c /systemd/src/import/curl-util.h /systemd/src/import/export-raw.c /systemd/src/import/export-raw.h /systemd/src/import/export-tar.c /systemd/src/import/export-tar.h /systemd/src/import/export.c /systemd/src/import/import-common.c /systemd/src/import/import-common.h /systemd/src/import/import-compress.c /systemd/src/import/import-compress.h /systemd/src/import/import-raw.c /systemd/src/import/import-raw.h /systemd/src/import/import-tar.c /systemd/src/import/import-tar.h /systemd/src/import/import.c /systemd/src/import/importd.c /systemd/src/import/pull-common.c /systemd/src/import/pull-common.h /systemd/src/import/pull-job.c /systemd/src/import/pull-job.h /systemd/src/import/pull-raw.c /systemd/src/import/pull-raw.h /systemd/src/import/pull-tar.c /systemd/src/import/pull-tar.h /systemd/src/import/pull.c /systemd/src/import/qcow2-util.c /systemd/src/import/qcow2-util.h /systemd/src/import/test-qcow2.c /systemd/src/initctl/initctl.c /systemd/src/journal-remote/journal-gatewayd.c /systemd/src/journal-remote/journal-remote-parse.c /systemd/src/journal-remote/journal-remote-parse.h /systemd/src/journal-remote/journal-remote-write.c /systemd/src/journal-remote/journal-remote-write.h /systemd/src/journal-remote/journal-remote.c /systemd/src/journal-remote/journal-remote.h /systemd/src/journal-remote/journal-upload-journal.c /systemd/src/journal-remote/journal-upload.c /systemd/src/journal-remote/microhttpd-util.c /systemd/src/journal-remote/microhttpd-util.h /systemd/src/journal/audit-type.c /systemd/src/journal/audit-type.h /systemd/src/journal/cat.c /systemd/src/journal/catalog.c /systemd/src/journal/catalog.h /systemd/src/journal/compress.c /systemd/src/journal/compress.h /systemd/src/journal/coredump-vacuum.c /systemd/src/journal/coredump-vacuum.h /systemd/src/journal/coredump.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/fsprg.c /systemd/src/journal/fsprg.h /systemd/src/journal/journal-authenticate.c /systemd/src/journal/journal-authenticate.h /systemd/src/journal/journal-def.h /systemd/src/journal/journal-file.c /systemd/src/journal/journal-file.h /systemd/src/journal/journal-internal.h /systemd/src/journal/journal-qrcode.c /systemd/src/journal/journal-qrcode.h /systemd/src/journal/journal-send.c /systemd/src/journal/journal-vacuum.c /systemd/src/journal/journal-vacuum.h /systemd/src/journal/journal-verify.c /systemd/src/journal/journal-verify.h /systemd/src/journal/journalctl.c /systemd/src/journal/journald-audit.c /systemd/src/journal/journald-audit.h /systemd/src/journal/journald-console.c /systemd/src/journal/journald-console.h /systemd/src/journal/journald-kmsg.c /systemd/src/journal/journald-kmsg.h /systemd/src/journal/journald-native.c /systemd/src/journal/journald-native.h /systemd/src/journal/journald-rate-limit.c /systemd/src/journal/journald-rate-limit.h /systemd/src/journal/journald-server.c /systemd/src/journal/journald-server.h /systemd/src/journal/journald-stream.c /systemd/src/journal/journald-stream.h /systemd/src/journal/journald-syslog.c /systemd/src/journal/journald-syslog.h /systemd/src/journal/journald-wall.c /systemd/src/journal/journald-wall.h /systemd/src/journal/journald.c /systemd/src/journal/lookup3.h /systemd/src/journal/mmap-cache.c /systemd/src/journal/mmap-cache.h /systemd/src/journal/sd-journal.c /systemd/src/journal/stacktrace.c /systemd/src/journal/stacktrace.h /systemd/src/journal/test-audit-type.c /systemd/src/journal/test-catalog.c /systemd/src/journal/test-compress-benchmark.c /systemd/src/journal/test-coredump-vacuum.c /systemd/src/journal/test-journal-enum.c /systemd/src/journal/test-journal-flush.c /systemd/src/journal/test-journal-init.c /systemd/src/journal/test-journal-interleaving.c /systemd/src/journal/test-journal-match.c /systemd/src/journal/test-journal-send.c /systemd/src/journal/test-journal-stream.c /systemd/src/journal/test-journal-syslog.c /systemd/src/journal/test-journal-verify.c /systemd/src/journal/test-journal.c /systemd/src/journal/test-mmap-cache.c /systemd/src/libsystemd-network/arp-util.h /systemd/src/libsystemd-network/dhcp-identifier.c /systemd/src/libsystemd-network/dhcp-identifier.h /systemd/src/libsystemd-network/dhcp-internal.h /systemd/src/libsystemd-network/dhcp-lease-internal.h /systemd/src/libsystemd-network/dhcp-option.c /systemd/src/libsystemd-network/dhcp-protocol.h /systemd/src/libsystemd-network/dhcp-server-internal.h /systemd/src/libsystemd-network/dhcp6-internal.h /systemd/src/libsystemd-network/dhcp6-lease-internal.h /systemd/src/libsystemd-network/dhcp6-option.c /systemd/src/libsystemd-network/dhcp6-protocol.h /systemd/src/libsystemd-network/icmp6-util.h /systemd/src/libsystemd-network/lldp-internal.c /systemd/src/libsystemd-network/lldp-internal.h /systemd/src/libsystemd-network/lldp-network.c /systemd/src/libsystemd-network/lldp-network.h /systemd/src/libsystemd-network/lldp-port.c /systemd/src/libsystemd-network/lldp-port.h /systemd/src/libsystemd-network/lldp-tlv.c /systemd/src/libsystemd-network/lldp-tlv.h /systemd/src/libsystemd-network/lldp.h /systemd/src/libsystemd-network/network-internal.c /systemd/src/libsystemd-network/network-internal.h /systemd/src/libsystemd-network/sd-dhcp-server.c /systemd/src/libsystemd-network/sd-dhcp6-client.c /systemd/src/libsystemd-network/sd-dhcp6-lease.c /systemd/src/libsystemd-network/sd-lldp.c /systemd/src/libsystemd-network/sd-ndisc.c /systemd/src/libsystemd-network/test-acd.c /systemd/src/libsystemd-network/test-dhcp-client.c /systemd/src/libsystemd-network/test-dhcp-option.c /systemd/src/libsystemd-network/test-dhcp-server.c /systemd/src/libsystemd-network/test-dhcp6-client.c /systemd/src/libsystemd-network/test-ipv4ll-manual.c /systemd/src/libsystemd-network/test-ipv4ll.c /systemd/src/libsystemd-network/test-lldp.c /systemd/src/libsystemd-network/test-ndisc-rs.c /systemd/src/libsystemd/sd-bus/bus-bloom.c /systemd/src/libsystemd/sd-bus/bus-bloom.h /systemd/src/libsystemd/sd-bus/bus-common-errors.c /systemd/src/libsystemd/sd-bus/bus-common-errors.h /systemd/src/libsystemd/sd-bus/bus-container.c /systemd/src/libsystemd/sd-bus/bus-container.h /systemd/src/libsystemd/sd-bus/bus-control.c /systemd/src/libsystemd/sd-bus/bus-control.h /systemd/src/libsystemd/sd-bus/bus-convenience.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-creds.h /systemd/src/libsystemd/sd-bus/bus-dump.c /systemd/src/libsystemd/sd-bus/bus-dump.h /systemd/src/libsystemd/sd-bus/bus-error.c /systemd/src/libsystemd/sd-bus/bus-error.h /systemd/src/libsystemd/sd-bus/bus-gvariant.c /systemd/src/libsystemd/sd-bus/bus-gvariant.h /systemd/src/libsystemd/sd-bus/bus-internal.c /systemd/src/libsystemd/sd-bus/bus-internal.h /systemd/src/libsystemd/sd-bus/bus-introspect.c /systemd/src/libsystemd/sd-bus/bus-introspect.h /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/bus-kernel.h /systemd/src/libsystemd/sd-bus/bus-match.c /systemd/src/libsystemd/sd-bus/bus-match.h /systemd/src/libsystemd/sd-bus/bus-message.c /systemd/src/libsystemd/sd-bus/bus-message.h /systemd/src/libsystemd/sd-bus/bus-objects.c /systemd/src/libsystemd/sd-bus/bus-objects.h /systemd/src/libsystemd/sd-bus/bus-protocol.h /systemd/src/libsystemd/sd-bus/bus-signature.c /systemd/src/libsystemd/sd-bus/bus-signature.h /systemd/src/libsystemd/sd-bus/bus-slot.c /systemd/src/libsystemd/sd-bus/bus-slot.h /systemd/src/libsystemd/sd-bus/bus-socket.c /systemd/src/libsystemd/sd-bus/bus-socket.h /systemd/src/libsystemd/sd-bus/bus-track.c /systemd/src/libsystemd/sd-bus/bus-track.h /systemd/src/libsystemd/sd-bus/bus-type.c /systemd/src/libsystemd/sd-bus/bus-type.h /systemd/src/libsystemd/sd-bus/busctl-introspect.c /systemd/src/libsystemd/sd-bus/busctl-introspect.h /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-bus/test-bus-benchmark.c /systemd/src/libsystemd/sd-bus/test-bus-chat.c /systemd/src/libsystemd/sd-bus/test-bus-cleanup.c /systemd/src/libsystemd/sd-bus/test-bus-creds.c /systemd/src/libsystemd/sd-bus/test-bus-error.c /systemd/src/libsystemd/sd-bus/test-bus-gvariant.c /systemd/src/libsystemd/sd-bus/test-bus-introspect.c /systemd/src/libsystemd/sd-bus/test-bus-kernel-bloom.c /systemd/src/libsystemd/sd-bus/test-bus-kernel.c /systemd/src/libsystemd/sd-bus/test-bus-marshal.c /systemd/src/libsystemd/sd-bus/test-bus-match.c /systemd/src/libsystemd/sd-bus/test-bus-objects.c /systemd/src/libsystemd/sd-bus/test-bus-proxy.c /systemd/src/libsystemd/sd-bus/test-bus-server.c /systemd/src/libsystemd/sd-bus/test-bus-signature.c /systemd/src/libsystemd/sd-bus/test-bus-zero-copy.c /systemd/src/libsystemd/sd-daemon/sd-daemon.c /systemd/src/libsystemd/sd-device/device-enumerator-private.h /systemd/src/libsystemd/sd-device/device-private.h /systemd/src/libsystemd/sd-device/device-util.h /systemd/src/libsystemd/sd-event/sd-event.c /systemd/src/libsystemd/sd-event/test-event.c /systemd/src/libsystemd/sd-hwdb/hwdb-util.h /systemd/src/libsystemd/sd-id128/sd-id128.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-login/test-login.c /systemd/src/libsystemd/sd-netlink/local-addresses.c /systemd/src/libsystemd/sd-netlink/local-addresses.h /systemd/src/libsystemd/sd-netlink/netlink-internal.h /systemd/src/libsystemd/sd-netlink/netlink-message.c /systemd/src/libsystemd/sd-netlink/netlink-socket.c /systemd/src/libsystemd/sd-netlink/netlink-types.c /systemd/src/libsystemd/sd-netlink/netlink-types.h /systemd/src/libsystemd/sd-netlink/netlink-util.c /systemd/src/libsystemd/sd-netlink/netlink-util.h /systemd/src/libsystemd/sd-netlink/rtnl-message.c /systemd/src/libsystemd/sd-netlink/sd-netlink.c /systemd/src/libsystemd/sd-netlink/test-local-addresses.c /systemd/src/libsystemd/sd-netlink/test-netlink.c /systemd/src/libsystemd/sd-network/network-util.c /systemd/src/libsystemd/sd-network/network-util.h /systemd/src/libsystemd/sd-network/sd-network.c /systemd/src/libsystemd/sd-resolve/sd-resolve.c /systemd/src/libsystemd/sd-resolve/test-resolve.c /systemd/src/libsystemd/sd-utf8/sd-utf8.c /systemd/src/locale/localectl.c /systemd/src/locale/localed.c /systemd/src/login/inhibit.c /systemd/src/login/loginctl.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-acl.h /systemd/src/login/logind-action.c /systemd/src/login/logind-action.h /systemd/src/login/logind-button.c /systemd/src/login/logind-button.h /systemd/src/login/logind-core.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-device.c /systemd/src/login/logind-device.h /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-inhibit.h /systemd/src/login/logind-seat-dbus.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-seat.h /systemd/src/login/logind-session-dbus.c /systemd/src/login/logind-session-device.c /systemd/src/login/logind-session-device.h /systemd/src/login/logind-session.c /systemd/src/login/logind-session.h /systemd/src/login/logind-user-dbus.c /systemd/src/login/logind-user.c /systemd/src/login/logind-user.h /systemd/src/login/logind-utmp.c /systemd/src/login/logind.c /systemd/src/login/logind.h /systemd/src/login/pam_systemd.c /systemd/src/login/sysfs-show.c /systemd/src/login/sysfs-show.h /systemd/src/login/test-inhibit.c /systemd/src/login/test-login-shared.c /systemd/src/machine-id-setup/machine-id-setup-main.c /systemd/src/machine/image-dbus.c /systemd/src/machine/image-dbus.h /systemd/src/machine/machine-dbus.c /systemd/src/machine/machine-dbus.h /systemd/src/machine/machine.c /systemd/src/machine/machine.h /systemd/src/machine/machinectl.c /systemd/src/machine/machined-dbus.c /systemd/src/machine/machined.c /systemd/src/machine/machined.h /systemd/src/modules-load/modules-load.c /systemd/src/network/networkctl.c /systemd/src/network/networkd-address-pool.c /systemd/src/network/networkd-address-pool.h /systemd/src/network/networkd-address.c /systemd/src/network/networkd-address.h /systemd/src/network/networkd-dhcp4.c /systemd/src/network/networkd-dhcp6.c /systemd/src/network/networkd-fdb.c /systemd/src/network/networkd-fdb.h /systemd/src/network/networkd-ipv4ll.c /systemd/src/network/networkd-link-bus.c /systemd/src/network/networkd-link.c /systemd/src/network/networkd-link.h /systemd/src/network/networkd-manager-bus.c /systemd/src/network/networkd-manager.c /systemd/src/network/networkd-ndisc.c /systemd/src/network/networkd-netdev-bond.c /systemd/src/network/networkd-netdev-bond.h /systemd/src/network/networkd-netdev-bridge.c /systemd/src/network/networkd-netdev-bridge.h /systemd/src/network/networkd-netdev-dummy.c /systemd/src/network/networkd-netdev-dummy.h /systemd/src/network/networkd-netdev-ipvlan.c /systemd/src/network/networkd-netdev-ipvlan.h /systemd/src/network/networkd-netdev-macvlan.c /systemd/src/network/networkd-netdev-macvlan.h /systemd/src/network/networkd-netdev-tunnel.c /systemd/src/network/networkd-netdev-tunnel.h /systemd/src/network/networkd-netdev-tuntap.c /systemd/src/network/networkd-netdev-tuntap.h /systemd/src/network/networkd-netdev-veth.c /systemd/src/network/networkd-netdev-veth.h /systemd/src/network/networkd-netdev-vlan.c /systemd/src/network/networkd-netdev-vlan.h /systemd/src/network/networkd-netdev-vxlan.c /systemd/src/network/networkd-netdev-vxlan.h /systemd/src/network/networkd-netdev.c /systemd/src/network/networkd-netdev.h /systemd/src/network/networkd-network-bus.c /systemd/src/network/networkd-network.c /systemd/src/network/networkd-network.h /systemd/src/network/networkd-route.c /systemd/src/network/networkd-route.h /systemd/src/network/networkd-util.c /systemd/src/network/networkd-util.h /systemd/src/network/networkd-wait-online-link.c /systemd/src/network/networkd-wait-online-link.h /systemd/src/network/networkd-wait-online-manager.c /systemd/src/network/networkd-wait-online.h /systemd/src/network/networkd.c /systemd/src/network/networkd.h /systemd/src/network/test-network.c /systemd/src/notify/notify.c /systemd/src/nspawn/nspawn-cgroup.c /systemd/src/nspawn/nspawn-cgroup.h /systemd/src/nspawn/nspawn-expose-ports.c /systemd/src/nspawn/nspawn-expose-ports.h /systemd/src/nspawn/nspawn-mount.c /systemd/src/nspawn/nspawn-mount.h /systemd/src/nspawn/nspawn-network.c /systemd/src/nspawn/nspawn-network.h /systemd/src/nspawn/nspawn-register.c /systemd/src/nspawn/nspawn-register.h /systemd/src/nspawn/nspawn-settings.c /systemd/src/nspawn/nspawn-settings.h /systemd/src/nspawn/nspawn-setuid.c /systemd/src/nspawn/nspawn-setuid.h /systemd/src/nspawn/nspawn.c /systemd/src/nss-myhostname/nss-myhostname.c /systemd/src/nss-mymachines/nss-mymachines.c /systemd/src/nss-resolve/nss-resolve.c /systemd/src/path/path.c /systemd/src/quotacheck/quotacheck.c /systemd/src/random-seed/random-seed.c /systemd/src/rc-local-generator/rc-local-generator.c /systemd/src/remount-fs/remount-fs.c /systemd/src/reply-password/reply-password.c /systemd/src/resolve/dns-type.c /systemd/src/resolve/dns-type.h /systemd/src/resolve/resolve-tool.c /systemd/src/resolve/resolved-bus.c /systemd/src/resolve/resolved-bus.h /systemd/src/resolve/resolved-conf.c /systemd/src/resolve/resolved-conf.h /systemd/src/resolve/resolved-def.h /systemd/src/resolve/resolved-dns-answer.c /systemd/src/resolve/resolved-dns-answer.h /systemd/src/resolve/resolved-dns-cache.c /systemd/src/resolve/resolved-dns-cache.h /systemd/src/resolve/resolved-dns-dnssec.c /systemd/src/resolve/resolved-dns-dnssec.h /systemd/src/resolve/resolved-dns-packet.c /systemd/src/resolve/resolved-dns-packet.h /systemd/src/resolve/resolved-dns-query.c /systemd/src/resolve/resolved-dns-query.h /systemd/src/resolve/resolved-dns-question.c /systemd/src/resolve/resolved-dns-question.h /systemd/src/resolve/resolved-dns-rr.c /systemd/src/resolve/resolved-dns-rr.h /systemd/src/resolve/resolved-dns-scope.c /systemd/src/resolve/resolved-dns-scope.h /systemd/src/resolve/resolved-dns-search-domain.c /systemd/src/resolve/resolved-dns-search-domain.h /systemd/src/resolve/resolved-dns-server.c /systemd/src/resolve/resolved-dns-server.h /systemd/src/resolve/resolved-dns-stream.c /systemd/src/resolve/resolved-dns-stream.h /systemd/src/resolve/resolved-dns-transaction.c /systemd/src/resolve/resolved-dns-transaction.h /systemd/src/resolve/resolved-dns-trust-anchor.c /systemd/src/resolve/resolved-dns-trust-anchor.h /systemd/src/resolve/resolved-dns-zone.c /systemd/src/resolve/resolved-dns-zone.h /systemd/src/resolve/resolved-link-bus.c /systemd/src/resolve/resolved-link-bus.h /systemd/src/resolve/resolved-link.c /systemd/src/resolve/resolved-link.h /systemd/src/resolve/resolved-llmnr.c /systemd/src/resolve/resolved-llmnr.h /systemd/src/resolve/resolved-manager.c /systemd/src/resolve/resolved-manager.h /systemd/src/resolve/resolved-mdns.c /systemd/src/resolve/resolved-mdns.h /systemd/src/resolve/resolved-resolv-conf.c /systemd/src/resolve/resolved-resolv-conf.h /systemd/src/resolve/resolved.c /systemd/src/resolve/test-dnssec-complex.c /systemd/src/resolve/test-dnssec.c /systemd/src/rfkill/rfkill.c /systemd/src/run/run.c /systemd/src/shared/acl-util.c /systemd/src/shared/acl-util.h /systemd/src/shared/acpi-fpdt.c /systemd/src/shared/acpi-fpdt.h /systemd/src/shared/apparmor-util.c /systemd/src/shared/apparmor-util.h /systemd/src/shared/architecture.c /systemd/src/shared/architecture.h /systemd/src/shared/ask-password-api.c /systemd/src/shared/ask-password-api.h /systemd/src/shared/base-filesystem.c /systemd/src/shared/base-filesystem.h /systemd/src/shared/boot-timestamps.c /systemd/src/shared/boot-timestamps.h /systemd/src/shared/bus-util.c /systemd/src/shared/bus-util.h /systemd/src/shared/cgroup-show.c /systemd/src/shared/cgroup-show.h /systemd/src/shared/clean-ipc.c /systemd/src/shared/clean-ipc.h /systemd/src/shared/condition.c /systemd/src/shared/condition.h /systemd/src/shared/conf-parser.c /systemd/src/shared/conf-parser.h /systemd/src/shared/dev-setup.c /systemd/src/shared/dev-setup.h /systemd/src/shared/dns-domain.c /systemd/src/shared/dns-domain.h /systemd/src/shared/dropin.c /systemd/src/shared/dropin.h /systemd/src/shared/efivars.c /systemd/src/shared/efivars.h /systemd/src/shared/firewall-util.c /systemd/src/shared/firewall-util.h /systemd/src/shared/fstab-util.c /systemd/src/shared/fstab-util.h /systemd/src/shared/generator.c /systemd/src/shared/generator.h /systemd/src/shared/gpt.h /systemd/src/shared/ima-util.c /systemd/src/shared/ima-util.h /systemd/src/shared/import-util.c /systemd/src/shared/import-util.h /systemd/src/shared/install-printf.c /systemd/src/shared/install-printf.h /systemd/src/shared/install.c /systemd/src/shared/install.h /systemd/src/shared/logs-show.c /systemd/src/shared/logs-show.h /systemd/src/shared/machine-image.c /systemd/src/shared/machine-image.h /systemd/src/shared/machine-pool.c /systemd/src/shared/machine-pool.h /systemd/src/shared/output-mode.h /systemd/src/shared/pager.c /systemd/src/shared/pager.h /systemd/src/shared/path-lookup.c /systemd/src/shared/path-lookup.h /systemd/src/shared/ptyfwd.c /systemd/src/shared/ptyfwd.h /systemd/src/shared/resolve-util.c /systemd/src/shared/resolve-util.h /systemd/src/shared/seccomp-util.c /systemd/src/shared/seccomp-util.h /systemd/src/shared/sleep-config.c /systemd/src/shared/sleep-config.h /systemd/src/shared/spawn-ask-password-agent.c /systemd/src/shared/spawn-ask-password-agent.h /systemd/src/shared/spawn-polkit-agent.c /systemd/src/shared/spawn-polkit-agent.h /systemd/src/shared/specifier.c /systemd/src/shared/specifier.h /systemd/src/shared/switch-root.c /systemd/src/shared/switch-root.h /systemd/src/shared/sysctl-util.c /systemd/src/shared/sysctl-util.h /systemd/src/shared/udev-util.h /systemd/src/shared/uid-range.c /systemd/src/shared/uid-range.h /systemd/src/shared/utmp-wtmp.c /systemd/src/shared/utmp-wtmp.h /systemd/src/shared/watchdog.c /systemd/src/shared/watchdog.h /systemd/src/sleep/sleep.c /systemd/src/socket-proxy/socket-proxyd.c /systemd/src/sysctl/sysctl.c /systemd/src/system-update-generator/system-update-generator.c /systemd/src/systemctl/systemctl.c /systemd/src/systemd/_sd-common.h /systemd/src/systemd/sd-bus-protocol.h /systemd/src/systemd/sd-bus-vtable.h /systemd/src/systemd/sd-bus.h /systemd/src/systemd/sd-daemon.h /systemd/src/systemd/sd-device.h /systemd/src/systemd/sd-dhcp-client.h /systemd/src/systemd/sd-dhcp-lease.h /systemd/src/systemd/sd-dhcp-server.h /systemd/src/systemd/sd-dhcp6-client.h /systemd/src/systemd/sd-dhcp6-lease.h /systemd/src/systemd/sd-event.h /systemd/src/systemd/sd-hwdb.h /systemd/src/systemd/sd-id128.h /systemd/src/systemd/sd-ipv4acd.h /systemd/src/systemd/sd-ipv4ll.h /systemd/src/systemd/sd-journal.h /systemd/src/systemd/sd-lldp.h /systemd/src/systemd/sd-login.h /systemd/src/systemd/sd-messages.h /systemd/src/systemd/sd-ndisc.h /systemd/src/systemd/sd-netlink.h /systemd/src/systemd/sd-network.h /systemd/src/systemd/sd-path.h /systemd/src/systemd/sd-resolve.h /systemd/src/systemd/sd-utf8.h /systemd/src/sysusers/sysusers.c /systemd/src/sysv-generator/sysv-generator.c /systemd/src/test/test-acl-util.c /systemd/src/test/test-architecture.c /systemd/src/test/test-ask-password-api.c /systemd/src/test/test-barrier.c /systemd/src/test/test-boot-timestamps.c /systemd/src/test/test-btrfs.c /systemd/src/test/test-calendarspec.c /systemd/src/test/test-cap-list.c /systemd/src/test/test-cgroup-mask.c /systemd/src/test/test-cgroup-util.c /systemd/src/test/test-cgroup.c /systemd/src/test/test-conf-files.c /systemd/src/test/test-daemon.c /systemd/src/test/test-date.c /systemd/src/test/test-device-nodes.c /systemd/src/test/test-dns-domain.c /systemd/src/test/test-ellipsize.c /systemd/src/test/test-engine.c /systemd/src/test/test-env-replace.c /systemd/src/test/test-extract-word.c /systemd/src/test/test-fileio.c /systemd/src/test/test-firewall-util.c /systemd/src/test/test-fstab-util.c /systemd/src/test/test-helper.h /systemd/src/test/test-hostname-util.c /systemd/src/test/test-hostname.c /systemd/src/test/test-id128.c /systemd/src/test/test-install-root.c /systemd/src/test/test-install.c /systemd/src/test/test-ipcrm.c /systemd/src/test/test-job-type.c /systemd/src/test/test-json.c /systemd/src/test/test-libudev.c /systemd/src/test/test-log.c /systemd/src/test/test-loopback.c /systemd/src/test/test-namespace.c /systemd/src/test/test-netlink-manual.c /systemd/src/test/test-ns.c /systemd/src/test/test-parse-util.c /systemd/src/test/test-path-lookup.c /systemd/src/test/test-path-util.c /systemd/src/test/test-prioq.c /systemd/src/test/test-replace-var.c /systemd/src/test/test-sched-prio.c /systemd/src/test/test-sigbus.c /systemd/src/test/test-siphash24.c /systemd/src/test/test-sleep.c /systemd/src/test/test-strbuf.c /systemd/src/test/test-string-util.c /systemd/src/test/test-strip-tab-ansi.c /systemd/src/test/test-strv.c /systemd/src/test/test-strxcpyx.c /systemd/src/test/test-time.c /systemd/src/test/test-tmpfiles.c /systemd/src/test/test-uid-range.c /systemd/src/test/test-unit-file.c /systemd/src/test/test-unit-name.c /systemd/src/test/test-user-util.c /systemd/src/test/test-utf8.c /systemd/src/test/test-util.c /systemd/src/test/test-watchdog.c /systemd/src/test/test-xml.c /systemd/src/timedate/timedatectl.c /systemd/src/timedate/timedated.c /systemd/src/timesync/timesyncd-conf.c /systemd/src/timesync/timesyncd-conf.h /systemd/src/timesync/timesyncd-manager.c /systemd/src/timesync/timesyncd-manager.h /systemd/src/timesync/timesyncd-server.c /systemd/src/timesync/timesyncd-server.h /systemd/src/timesync/timesyncd.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/udev/net/ethtool-util.c /systemd/src/udev/net/ethtool-util.h /systemd/src/udev/net/link-config.c /systemd/src/udev/net/link-config.h /systemd/src/udev/scsi_id/scsi.h /systemd/src/udev/scsi_id/scsi_id.c /systemd/src/udev/scsi_id/scsi_id.h /systemd/src/udev/scsi_id/scsi_serial.c /systemd/src/udev/udev-builtin-blkid.c /systemd/src/udev/udev-builtin-btrfs.c /systemd/src/udev/udev-builtin-hwdb.c /systemd/src/udev/udev-builtin-input_id.c /systemd/src/udev/udev-builtin-keyboard.c /systemd/src/udev/udev-builtin-kmod.c /systemd/src/udev/udev-builtin-net_id.c /systemd/src/udev/udev-builtin-net_setup_link.c /systemd/src/udev/udev-builtin-path_id.c /systemd/src/udev/udev-builtin-uaccess.c /systemd/src/udev/udev-builtin-usb_id.c /systemd/src/udev/udev-builtin.c /systemd/src/udev/udev-ctrl.c /systemd/src/udev/udev-event.c /systemd/src/udev/udev-node.c /systemd/src/udev/udev-rules.c /systemd/src/udev/udev-watch.c /systemd/src/udev/udev.h /systemd/src/udev/udevadm-control.c /systemd/src/udev/udevadm-hwdb.c /systemd/src/udev/udevadm-info.c /systemd/src/udev/udevadm-monitor.c /systemd/src/udev/udevadm-settle.c /systemd/src/udev/udevadm-test-builtin.c /systemd/src/udev/udevadm-test.c /systemd/src/udev/udevadm-trigger.c /systemd/src/udev/udevadm-util.c /systemd/src/udev/udevadm-util.h /systemd/src/udev/udevadm.c /systemd/src/udev/udevd.c /systemd/src/udev/v4l_id/v4l_id.c /systemd/src/update-done/update-done.c /systemd/src/update-utmp/update-utmp.c /systemd/src/user-sessions/user-sessions.c /systemd/src/vconsole/vconsole-setup.c
6bf0f408e4833152197fb38fb10a9989c89f3a59 10-Feb-2016 Lennart Poettering <lennart@poettering.net>

core: make the StartLimitXYZ= settings generic and apply to any kind of unit, not just services This moves the StartLimitBurst=, StartLimitInterval=, StartLimitAction=, RebootArgument= from the [Service] section into the [Unit] section of unit files, and thus support it in all unit types, not just in services. This way we can enforce the start limit much earlier, in particular before testing the unit conditions, so that repeated start-up failure due to failed conditions is also considered for the start limit logic. For compatibility the four options may also be configured in the [Service] section still, but we only document them in their new section [Unit]. This also renamed the socket unit failure code "service-failed-permanent" into "service-start-limit-hit" to express more clearly what it is about, after all it's only triggered through the start limit being hit. Finally, the code in busname_trigger_notify() and socket_trigger_notify() is altered to become more alike. Fixes: #2467

1f133e0d538305edfce55198abadaa9a32ab23ab 07-Feb-2016 Torstein Husebø <torstein@huseboe.net>

treewide: fix typos and spacing

36c16a7cdd6c33d7980efc2cd6a2211941f302b4 01-Feb-2016 Lennart Poettering <lennart@poettering.net>

core: rework unit timeout handling, and add new setting RuntimeMaxSec= This clean-ups timeout handling in PID 1. Specifically, instead of storing 0 in internal timeout variables as indication for a disabled timeout, use USEC_INFINITY which is in-line with how we do this in the rest of our code (following the logic that 0 means "no", and USEC_INFINITY means "never"). This also replace all usec_t additions with invocations to usec_add(), so that USEC_INFINITY is properly propagated, and sd-event considers it has indication for turning off the event source. This also alters the deserialization of the units to restart timeouts from the time they were originally started from. Before this patch timeouts would be restarted beginning with the time of the deserialization, which could lead to artificially prolonged timeouts if a daemon reload took place. Finally, a new RuntimeMaxSec= setting is introduced for service units, that specifies a maximum runtime after which a specific service is forcibly terminated. This is useful to put time limits on time-intensive processing jobs. This also simplifies the various xyz_spawn() calls of the various types in that explicit distruction of the timers is removed, as that is done anyway by the state change handlers, and a state change is always done when the xyz_spawn() calls fail. Fixes: #2249

a483fb59a8dd908a3e4b20d62410d022d511eaa8 01-Feb-2016 Lennart Poettering <lennart@poettering.net>

core: store for each unit when the last low-level unit state change took place This adds a new timestamp field to the Unit struct, storing when the last low-level state change took place, and make sure this is restored after a daemon reload. This new field is useful to allow restarting of per-state timers exactly where they originally started.

3282591dc30b2934a895c7403d2f0b0690260947 28-Jan-2016 Lennart Poettering <lennart@poettering.net>

core: make sure "systemctl reload-or-try-restart is actually a noop if a unit is not running This makes sure we follow the same basic logic for try-restart if we have a try-reload. Fixes #688

d054f0a4d451120c26494263fc4dc175bfd405b1 12-Jan-2016 Daniel Mack <daniel@zonque.org>

tree-wide: use xsprintf() where applicable Also add a coccinelle receipt to help with such transitions.

a103496ca585e22bb5e386e3238b468d133f5659 11-Jan-2016 Ismo Puustinen <ismo.puustinen@intel.com>

capabilities: keep bounding set in non-inverted format. Change the capability bounding set parser and logic so that the bounding set is kept as a positive set internally. This means that the set reflects those capabilities that we want to keep instead of drop.

201f0c916d8f65ad2595a651b1371fcd39a4cf55 10-Jan-2016 Daniel Mack <daniel@zonque.org>

tree-wide: unify argument lists of IN_SET() The new implementation will not allow passing the same values more than once, so clean up first.

4afd3348c7506dd1d36305b7bcb9feb8952b9d6b 27-Nov-2015 Lennart Poettering <lennart@poettering.net>

tree-wide: expose "p"-suffix unref calls in public APIs to make gcc cleanup easy GLIB has recently started to officially support the gcc cleanup attribute in its public API, hence let's do the same for our APIs. With this patch we'll define an xyz_unrefp() call for each public xyz_unref() call, to make it easy to use inside a __attribute__((cleanup())) expression. Then, all code is ported over to make use of this. The new calls are also documented in the man pages, with examples how to use them (well, I only added docs where the _unref() call itself already had docs, and the examples, only cover sd_bus_unrefp() and sd_event_unrefp()). This also renames sd_lldp_free() to sd_lldp_unref(), since that's how we tend to call our destructors these days. Note that this defines no public macro that wraps gcc's attribute and makes it easier to use. While I think it's our duty in the library to make our stuff easy to use, I figure it's not our duty to make gcc's own features easy to use on its own. Most likely, client code which wants to make use of this should define its own: #define _cleanup_(function) __attribute__((cleanup(function))) Or similar, to make the gcc feature easier to use. Making this logic public has the benefit that we can remove three header files whose only purpose was to define these functions internally. See #2008.

/systemd/Makefile-man.am /systemd/Makefile.am /systemd/man/sd_bus_creds_new_from_pid.xml /systemd/man/sd_bus_new.xml /systemd/man/sd_event_new.xml /systemd/man/sd_event_source_unref.xml /systemd/man/sd_login_monitor_new.xml /systemd/src/analyze/analyze-verify.c /systemd/src/analyze/analyze.c /systemd/src/bus-proxyd/driver.c /systemd/src/bus-proxyd/proxy.c /systemd/src/bus-proxyd/stdio-bridge.c /systemd/src/bus-proxyd/synthesize.c /systemd/src/cgls/cgls.c /systemd/src/cgroups-agent/cgroups-agent.c /systemd/src/cgtop/cgtop.c automount.c busname.c dbus-job.c dbus-manager.c dbus-scope.c dbus-unit.c dbus.c load-fragment.c loopback-setup.c main.c manager.c path.c selinux-access.c service.c socket.c timer.c unit.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/fsck/fsck.c /systemd/src/hostname/hostnamectl.c /systemd/src/hostname/hostnamed.c /systemd/src/hwdb/hwdb.c /systemd/src/import/export.c /systemd/src/import/import.c /systemd/src/import/importd.c /systemd/src/import/pull.c /systemd/src/initctl/initctl.c /systemd/src/journal-remote/journal-gatewayd.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journal-internal.h /systemd/src/journal/journalctl.c /systemd/src/journal/test-journal-enum.c /systemd/src/journal/test-journal-match.c /systemd/src/journal/test-journal-stream.c /systemd/src/libsystemd-network/dhcp-internal.h /systemd/src/libsystemd-network/dhcp-lease-internal.h /systemd/src/libsystemd-network/dhcp-server-internal.h /systemd/src/libsystemd-network/dhcp6-lease-internal.h /systemd/src/libsystemd-network/lldp-internal.c /systemd/src/libsystemd-network/lldp-tlv.h /systemd/src/libsystemd-network/lldp-util.h /systemd/src/libsystemd-network/sd-dhcp-client.c /systemd/src/libsystemd-network/sd-dhcp-lease.c /systemd/src/libsystemd-network/sd-dhcp-server.c /systemd/src/libsystemd-network/sd-dhcp6-client.c /systemd/src/libsystemd-network/sd-ipv4acd.c /systemd/src/libsystemd-network/sd-ipv4ll.c /systemd/src/libsystemd-network/sd-lldp.c /systemd/src/libsystemd-network/sd-ndisc.c /systemd/src/libsystemd-network/test-acd.c /systemd/src/libsystemd-network/test-dhcp-client.c /systemd/src/libsystemd-network/test-dhcp-server.c /systemd/src/libsystemd-network/test-dhcp6-client.c /systemd/src/libsystemd-network/test-ipv4ll-manual.c /systemd/src/libsystemd-network/test-ipv4ll.c /systemd/src/libsystemd-network/test-lldp.c /systemd/src/libsystemd/sd-bus/bus-control.c /systemd/src/libsystemd/sd-bus/bus-convenience.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-internal.h /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/bus-match.c /systemd/src/libsystemd/sd-bus/bus-message.c /systemd/src/libsystemd/sd-bus/bus-objects.c /systemd/src/libsystemd/sd-bus/bus-slot.c /systemd/src/libsystemd/sd-bus/bus-track.c /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-bus/test-bus-benchmark.c /systemd/src/libsystemd/sd-bus/test-bus-chat.c /systemd/src/libsystemd/sd-bus/test-bus-cleanup.c /systemd/src/libsystemd/sd-bus/test-bus-creds.c /systemd/src/libsystemd/sd-bus/test-bus-error.c /systemd/src/libsystemd/sd-bus/test-bus-gvariant.c /systemd/src/libsystemd/sd-bus/test-bus-kernel-bloom.c /systemd/src/libsystemd/sd-bus/test-bus-kernel.c /systemd/src/libsystemd/sd-bus/test-bus-marshal.c /systemd/src/libsystemd/sd-bus/test-bus-match.c /systemd/src/libsystemd/sd-bus/test-bus-objects.c /systemd/src/libsystemd/sd-bus/test-bus-proxy.c /systemd/src/libsystemd/sd-bus/test-bus-server.c /systemd/src/libsystemd/sd-device/device-enumerator.c /systemd/src/libsystemd/sd-device/device-private.c /systemd/src/libsystemd/sd-device/device-util.h /systemd/src/libsystemd/sd-device/sd-device.c /systemd/src/libsystemd/sd-event/event-util.h /systemd/src/libsystemd/sd-hwdb/hwdb-util.h /systemd/src/libsystemd/sd-hwdb/sd-hwdb.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-netlink/local-addresses.c /systemd/src/libsystemd/sd-netlink/netlink-internal.h /systemd/src/libsystemd/sd-netlink/netlink-message.c /systemd/src/libsystemd/sd-netlink/netlink-socket.c /systemd/src/libsystemd/sd-netlink/netlink-util.c /systemd/src/libsystemd/sd-netlink/netlink-util.h /systemd/src/libsystemd/sd-netlink/sd-netlink.c /systemd/src/libsystemd/sd-netlink/test-netlink.c /systemd/src/libsystemd/sd-network/network-util.h /systemd/src/libsystemd/sd-resolve/resolve-util.h /systemd/src/libsystemd/sd-resolve/sd-resolve.c /systemd/src/libsystemd/sd-resolve/test-resolve.c /systemd/src/libudev/libudev-enumerate.c /systemd/src/libudev/libudev-hwdb.c /systemd/src/locale/localectl.c /systemd/src/locale/localed.c /systemd/src/login/inhibit.c /systemd/src/login/loginctl.c /systemd/src/login/logind-action.c /systemd/src/login/logind-core.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-seat-dbus.c /systemd/src/login/logind-session-dbus.c /systemd/src/login/logind-session-device.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user-dbus.c /systemd/src/login/logind-user.c /systemd/src/login/logind.c /systemd/src/login/pam_systemd.c /systemd/src/login/test-inhibit.c /systemd/src/machine/machine-dbus.c /systemd/src/machine/machine.c /systemd/src/machine/machinectl.c /systemd/src/machine/machined-dbus.c /systemd/src/machine/machined.c /systemd/src/network/networkctl.c /systemd/src/network/networkd-address.c /systemd/src/network/networkd-fdb.c /systemd/src/network/networkd-link.c /systemd/src/network/networkd-manager.c /systemd/src/network/networkd-netdev-bridge.c /systemd/src/network/networkd-netdev.c /systemd/src/network/networkd-route.c /systemd/src/network/networkd-wait-online-manager.c /systemd/src/nspawn/nspawn-expose-ports.c /systemd/src/nspawn/nspawn-network.c /systemd/src/nspawn/nspawn-register.c /systemd/src/nspawn/nspawn.c /systemd/src/nss-mymachines/nss-mymachines.c /systemd/src/nss-resolve/nss-resolve.c /systemd/src/resolve-host/resolve-host.c /systemd/src/resolve/resolved-bus.c /systemd/src/resolve/resolved-manager.c /systemd/src/run/run.c /systemd/src/shared/bus-util.c /systemd/src/shared/bus-util.h /systemd/src/shared/logs-show.c /systemd/src/systemctl/systemctl.c /systemd/src/systemd/_sd-common.h /systemd/src/systemd/sd-bus.h /systemd/src/systemd/sd-device.h /systemd/src/systemd/sd-dhcp-client.h /systemd/src/systemd/sd-dhcp-lease.h /systemd/src/systemd/sd-dhcp-server.h /systemd/src/systemd/sd-dhcp6-client.h /systemd/src/systemd/sd-dhcp6-lease.h /systemd/src/systemd/sd-event.h /systemd/src/systemd/sd-hwdb.h /systemd/src/systemd/sd-ipv4acd.h /systemd/src/systemd/sd-ipv4ll.h /systemd/src/systemd/sd-journal.h /systemd/src/systemd/sd-lldp.h /systemd/src/systemd/sd-login.h /systemd/src/systemd/sd-ndisc.h /systemd/src/systemd/sd-netlink.h /systemd/src/systemd/sd-network.h /systemd/src/systemd/sd-resolve.h /systemd/src/test/test-engine.c /systemd/src/timedate/timedatectl.c /systemd/src/timedate/timedated.c /systemd/src/udev/udev-event.c /systemd/src/udev/udevadm-hwdb.c /systemd/src/udev/udevd.c /systemd/src/update-utmp/update-utmp.c
9d06297e262966de71095debd1537fc223f940a3 24-Nov-2015 Harald Hoyer <harald@redhat.com>

core: Do not bind a mount unit to a device, if it was from mountinfo If a mount unit is bound to a device, systemd tries to umount the mount point, if it thinks the device has gone away. Due to the uevent queue and inotify of /proc/self/mountinfo being two different sources, systemd can never get the ordering reliably correct. It can happen, that in the uevent queue ADD,REMOVE,ADD is queued and an inotify of mountinfo (or libmount event) happend with the device in question. systemd cannot know, at which point of time the mount happend in the ADD,REMOVE,ADD sequence. The real ordering might have been ADD,REMOVE,ADD,mount and systemd might think ADD,mount,REMOVE,ADD and would umount the mountpoint. A test script which triggered this behaviour is: rm -f test-efi-disk.img dd if=/dev/null of=test-efi-disk.img bs=1M seek=512 count=1 parted --script test-efi-disk.img \ "mklabel gpt" \ "mkpart ESP fat32 1MiB 511MiB" \ "set 1 boot on" LOOP=$(losetup --show -f -P test-efi-disk.img) udevadm settle mkfs.vfat -F32 ${LOOP}p1 mkdir -p mnt mount ${LOOP}p1 mnt ... <dostuffwith mnt> Without the "udevadm settle" systemd unmounted mnt while the script was operating on mnt. Of course the question is, why there was a REMOVE in the first place, but this is not part of this patch.

df446f96031e281ed676052ccdede0c774cb1e0c 17-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: Minor cleaning up of unit/log status and log logic We only reorder a few things and modernize some constructs. No functional changes. - Move some if checks from the caller to the callee of a few functions. - Use IN_SE() where we can - Move status printing functions together

7c65093ae351d82a04a3e03582e8faedee798adc 17-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: make unit_make_transient() more thorough Let's reset more stuff that does not apply to transient units. Also, let's readd the unito to all queues, because it's identity now changed.

0f13f3bd7918b84955eaa0ceeea0f964877a93f7 17-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: move check whether a unit is suitable to become transient into unit.c Lets introduce unit_is_pristine() that verifies whether a unit is suitable to become a transient unit, by checking that it is no referenced yet and has no data on disk assigned.

702d4e6f14b0c92f7325fcdc3650c79c2221849e 13-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: now that .snapshot unit are gone, we don't need the per-type .no_gc bool anymore

0af20ea2ee2af2bcf2258e7a8e1a13181a6a75d6 13-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: add new DefaultTasksMax= setting for system.conf This allows initializing the TasksMax= setting of all units by default to some fixed value, instead of leaving it at infinity as before.

4bd29fe5cec9d744a4e39240c76b85d999bd2cf7 12-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: drop "override" flag when building transactions Now that we don't have RequiresOverridable= and RequisiteOverridable= dependencies anymore, we can get rid of tracking the "override" boolean for jobs in the job engine, as it serves no purpose anymore. While we are at it, fix some error messages we print when invoking functions that take the override parameter.

f32b43bda454a70ae23d6802605d41b26dc24ce2 12-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: remove support for RequiresOverridable= and RequisiteOverridable= As discussed at systemd.conf 2015 and on also raised on the ML: http://lists.freedesktop.org/archives/systemd-devel/2015-November/034880.html This removes the two XyzOverridable= unit dependencies, that were basically never used, and do not enhance user experience in any way. Most folks looking for the functionality this provides probably opt for the "ignore-dependencies" job mode, and that's probably a good idea. Hence, let's simplify systemd's dependency engine and remove these two dependency types (and their inverses). The unit file parser and the dbus property parser will now redirect the settings/properties to result in an equivalent non-overridable dependency. In the case of the unit file parser we generate a warning, to inform the user. The dbus properties for this unit type stay available on the unit objects, but they are now hidden from usual introspection and will always return the empty list when queried. This should provide enough compatibility for the few unit files that actually ever made use of this.

0ec0deaa30d0e68430f03fa6f32affa576481d18 12-Nov-2015 Lennart Poettering <lennart@poettering.net>

install: follow unit file symlinks in /usr, but not /etc when looking for [Install] data Some distributions use alias unit files via symlinks in /usr to cover for legacy service names. With this change we'll allow "systemctl enable" on such aliases. Previously, our rule was that symlinks are user configuration that "systemctl enable" + "systemctl disable" creates and removes, while unit files is where the instructions to do so are store. As a result of the rule we'd never read install information through symlinks, since that would mix enablement state with installation instructions. Now, the new rule is that only symlinks inside of /etc are configuration. Unit files, and symlinks in /usr are now valid for installation instructions. This patch is quite a rework of the whole install logic, and makes the following addional changes: - Adds a complete test "test-instal-root" that tests the install logic pretty comprehensively. - Never uses canonicalize_file_name(), because that's incompatible with operation relative to a specific root directory. - unit_file_get_state() is reworked to return a proper error, and returns the state in a call-by-ref parameter. This cleans up confusion between the enum type and errno-like errors. - The new logic puts a limit on how long to follow unit file symlinks: it will do so only for 64 steps at max. - The InstallContext object's fields are renamed to will_process and has_processed (will_install and has_installed) since they are also used for deinstallation and all kinds of other operations. - The root directory is always verified before use. - install.c is reordered to place the exported functions together. - Stricter rules are followed when traversing symlinks: the unit suffix must say identical, and it's not allowed to link between regular units and templated units. - Various modernizations - The "invalid" unit file state has been renamed to "bad", in order to avoid confusion between UNIT_FILE_INVALID and _UNIT_FILE_STATE_INVALID. Given that the state should normally not be seen and is not documented this should not be a problematic change. The new name is now documented however. Fixes #1375, #1718, #1706

36b4a7ba555540edb7648e0f97019280b4ac38de 11-Nov-2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Remove snapshot unit type Snapshots were never useful or used for anything. Many systemd developers that I spoke to at systemd.conf2015, didn't even know they existed, so it is fairly safe to assume that this type can be deleted without harm. The fundamental problem with snapshots is that the state of the system is dynamic, devices come and go, users log in and out, timers fire... and restoring all units to some state from the past would "undo" those changes, which isn't really possible. Tested by creating a snapshot, running the new binary, and checking that the transition did not cause errors, and the snapshot is gone, and snapshots cannot be created anymore. New systemctl says: Unknown operation snapshot. Old systemctl says: Failed to create snapshot: Support for snapshots has been removed. IgnoreOnSnaphost settings are warned about and ignored: Support for option IgnoreOnSnapshot= has been removed and it is ignored http://lists.freedesktop.org/archives/systemd-devel/2015-November/034872.html

5a6158b6412100672e1cbddb22efdcc5101fed7f 10-Nov-2015 Lennart Poettering <lennart@poettering.net>

core: try to continue if coldplugging of a unit fails

8ea823b60d0afe71c9237738d2164460da0b76e6 02-Nov-2015 Daniel Mack <daniel@zonque.org>

core: be more verbose when NameOwnerChanged subscriptions fail

cbe46ead79267ca0a2807782f714bf9f60ff489f 31-Oct-2015 Evgeny Vereshchagin <evvers@ya.ru>

core: set_unit_path overwrites SYSTEMD_UNIT_PATH

b5efdb8af40ea759a1ea584c1bc44ecc81dd00ce 27-Oct-2015 Lennart Poettering <lennart@poettering.net>

util-lib: split out allocation calls into alloc-util.[ch]

/systemd/Makefile.am /systemd/src/activate/activate.c /systemd/src/analyze/analyze-verify.c /systemd/src/analyze/analyze.c /systemd/src/backlight/backlight.c /systemd/src/basic/alloc-util.c /systemd/src/basic/alloc-util.h /systemd/src/basic/audit-util.c /systemd/src/basic/bitmap.c /systemd/src/basic/btrfs-util.c /systemd/src/basic/bus-label.c /systemd/src/basic/calendarspec.c /systemd/src/basic/capability-util.c /systemd/src/basic/cgroup-util.c /systemd/src/basic/copy.c /systemd/src/basic/cpu-set-util.c /systemd/src/basic/env-util.c /systemd/src/basic/escape.c /systemd/src/basic/extract-word.c /systemd/src/basic/fileio.c /systemd/src/basic/fs-util.c /systemd/src/basic/hashmap.c /systemd/src/basic/hexdecoct.c /systemd/src/basic/in-addr-util.c /systemd/src/basic/json.c /systemd/src/basic/lockfile-util.c /systemd/src/basic/log.c /systemd/src/basic/memfd-util.c /systemd/src/basic/mount-util.c /systemd/src/basic/path-util.c /systemd/src/basic/prioq.c /systemd/src/basic/proc-cmdline.c /systemd/src/basic/process-util.c /systemd/src/basic/replace-var.c /systemd/src/basic/selinux-util.c /systemd/src/basic/smack-util.c /systemd/src/basic/socket-label.c /systemd/src/basic/socket-util.c /systemd/src/basic/strbuf.c /systemd/src/basic/string-util.c /systemd/src/basic/strv.c /systemd/src/basic/terminal-util.c /systemd/src/basic/time-util.c /systemd/src/basic/unit-name.c /systemd/src/basic/user-util.c /systemd/src/basic/utf8.c /systemd/src/basic/util.c /systemd/src/basic/util.h /systemd/src/basic/virt.c /systemd/src/basic/xattr-util.c /systemd/src/binfmt/binfmt.c /systemd/src/boot/bootctl.c /systemd/src/bootchart/bootchart.c /systemd/src/bootchart/store.c /systemd/src/bootchart/svg.c /systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/bus-xml-policy.c /systemd/src/bus-proxyd/driver.c /systemd/src/bus-proxyd/proxy.c /systemd/src/bus-proxyd/stdio-bridge.c /systemd/src/bus-proxyd/test-bus-xml-policy.c /systemd/src/cgls/cgls.c /systemd/src/cgtop/cgtop.c automount.c bus-endpoint.c bus-policy.c busname.c cgroup.c dbus-cgroup.c dbus-execute.c dbus-job.c dbus-manager.c dbus-scope.c dbus-service.c dbus-socket.c dbus-timer.c dbus-unit.c dbus.c device.c execute.c hostname-setup.c job.c killall.c load-fragment.c machine-id-setup.c main.c manager.c mount-setup.c mount.c namespace.c scope.c selinux-access.c service.c show-status.c shutdown.c slice.c smack-setup.c snapshot.c socket.c swap.c timer.c transaction.c umount.c unit-printf.c unit.c /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/dbus1-generator/dbus1-generator.c /systemd/src/debug-generator/debug-generator.c /systemd/src/delta/delta.c /systemd/src/escape/escape.c /systemd/src/firstboot/firstboot.c /systemd/src/fsck/fsck.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/getty-generator/getty-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/hibernate-resume/hibernate-resume-generator.c /systemd/src/hibernate-resume/hibernate-resume.c /systemd/src/hostname/hostnamectl.c /systemd/src/hostname/hostnamed.c /systemd/src/hwdb/hwdb.c /systemd/src/import/curl-util.c /systemd/src/import/export-raw.c /systemd/src/import/export-tar.c /systemd/src/import/export.c /systemd/src/import/import-raw.c /systemd/src/import/import-tar.c /systemd/src/import/import.c /systemd/src/import/importd.c /systemd/src/import/pull-common.c /systemd/src/import/pull-dkr.c /systemd/src/import/pull-job.c /systemd/src/import/pull-raw.c /systemd/src/import/pull-tar.c /systemd/src/import/pull.c /systemd/src/import/qcow2-util.c /systemd/src/initctl/initctl.c /systemd/src/journal-remote/journal-gatewayd.c /systemd/src/journal-remote/journal-remote-parse.c /systemd/src/journal-remote/journal-remote-write.c /systemd/src/journal-remote/journal-remote.c /systemd/src/journal-remote/journal-upload-journal.c /systemd/src/journal-remote/journal-upload.c /systemd/src/journal-remote/microhttpd-util.c /systemd/src/journal/catalog.c /systemd/src/journal/compress.c /systemd/src/journal/coredump-vacuum.c /systemd/src/journal/coredump.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journal-file.c /systemd/src/journal/journal-send.c /systemd/src/journal/journal-vacuum.c /systemd/src/journal/journal-verify.c /systemd/src/journal/journalctl.c /systemd/src/journal/journald-audit.c /systemd/src/journal/journald-console.c /systemd/src/journal/journald-native.c /systemd/src/journal/journald-rate-limit.c /systemd/src/journal/journald-server.c /systemd/src/journal/journald-stream.c /systemd/src/journal/journald-syslog.c /systemd/src/journal/journald-wall.c /systemd/src/journal/mmap-cache.c /systemd/src/journal/sd-journal.c /systemd/src/journal/stacktrace.c /systemd/src/journal/test-catalog.c /systemd/src/journal/test-compress-benchmark.c /systemd/src/journal/test-compress.c /systemd/src/journal/test-journal-flush.c /systemd/src/journal/test-journal-interleaving.c /systemd/src/journal/test-journal-match.c /systemd/src/journal/test-journal-stream.c /systemd/src/journal/test-journal-syslog.c /systemd/src/libsystemd-network/dhcp6-option.c /systemd/src/libsystemd-network/lldp-internal.c /systemd/src/libsystemd-network/lldp-port.c /systemd/src/libsystemd-network/lldp-tlv.c /systemd/src/libsystemd-network/network-internal.c /systemd/src/libsystemd-network/sd-dhcp-client.c /systemd/src/libsystemd-network/sd-dhcp-lease.c /systemd/src/libsystemd-network/sd-dhcp-server.c /systemd/src/libsystemd-network/sd-dhcp6-client.c /systemd/src/libsystemd-network/sd-dhcp6-lease.c /systemd/src/libsystemd-network/sd-ipv4acd.c /systemd/src/libsystemd-network/sd-ipv4ll.c /systemd/src/libsystemd-network/sd-lldp.c /systemd/src/libsystemd-network/sd-ndisc.c /systemd/src/libsystemd-network/sd-pppoe.c /systemd/src/libsystemd-network/test-dhcp-client.c /systemd/src/libsystemd-network/test-dhcp-option.c /systemd/src/libsystemd-network/test-ipv4ll-manual.c /systemd/src/libsystemd-network/test-lldp.c /systemd/src/libsystemd/sd-bus/bus-control.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-dump.c /systemd/src/libsystemd/sd-bus/bus-error.c /systemd/src/libsystemd/sd-bus/bus-internal.c /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/bus-match.c /systemd/src/libsystemd/sd-bus/bus-message.c /systemd/src/libsystemd/sd-bus/bus-objects.c /systemd/src/libsystemd/sd-bus/bus-slot.c /systemd/src/libsystemd/sd-bus/bus-socket.c /systemd/src/libsystemd/sd-bus/bus-track.c /systemd/src/libsystemd/sd-bus/busctl-introspect.c /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-bus/test-bus-benchmark.c /systemd/src/libsystemd/sd-bus/test-bus-chat.c /systemd/src/libsystemd/sd-bus/test-bus-gvariant.c /systemd/src/libsystemd/sd-bus/test-bus-kernel-bloom.c /systemd/src/libsystemd/sd-bus/test-bus-kernel.c /systemd/src/libsystemd/sd-bus/test-bus-marshal.c /systemd/src/libsystemd/sd-bus/test-bus-objects.c /systemd/src/libsystemd/sd-bus/test-bus-proxy.c /systemd/src/libsystemd/sd-bus/test-bus-zero-copy.c /systemd/src/libsystemd/sd-daemon/sd-daemon.c /systemd/src/libsystemd/sd-device/device-enumerator.c /systemd/src/libsystemd/sd-device/device-private.c /systemd/src/libsystemd/sd-device/sd-device.c /systemd/src/libsystemd/sd-event/sd-event.c /systemd/src/libsystemd/sd-hwdb/sd-hwdb.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-login/test-login.c /systemd/src/libsystemd/sd-netlink/local-addresses.c /systemd/src/libsystemd/sd-netlink/netlink-message.c /systemd/src/libsystemd/sd-netlink/netlink-socket.c /systemd/src/libsystemd/sd-netlink/sd-netlink.c /systemd/src/libsystemd/sd-netlink/test-local-addresses.c /systemd/src/libsystemd/sd-network/network-util.c /systemd/src/libsystemd/sd-network/sd-network.c /systemd/src/libsystemd/sd-path/sd-path.c /systemd/src/libsystemd/sd-resolve/sd-resolve.c /systemd/src/libsystemd/sd-resolve/test-resolve.c /systemd/src/libudev/libudev-device.c /systemd/src/libudev/libudev-enumerate.c /systemd/src/libudev/libudev-hwdb.c /systemd/src/libudev/libudev-list.c /systemd/src/libudev/libudev-monitor.c /systemd/src/libudev/libudev-queue.c /systemd/src/libudev/libudev.c /systemd/src/locale/localed.c /systemd/src/login/inhibit.c /systemd/src/login/loginctl.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-action.c /systemd/src/login/logind-button.c /systemd/src/login/logind-core.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-device.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-seat-dbus.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-session-dbus.c /systemd/src/login/logind-session-device.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user-dbus.c /systemd/src/login/logind-user.c /systemd/src/login/logind-utmp.c /systemd/src/login/logind.c /systemd/src/login/pam_systemd.c /systemd/src/login/sysfs-show.c /systemd/src/machine/image-dbus.c /systemd/src/machine/machine-dbus.c /systemd/src/machine/machine.c /systemd/src/machine/machinectl.c /systemd/src/machine/machined-dbus.c /systemd/src/machine/machined.c /systemd/src/network/networkctl.c /systemd/src/network/networkd-address-pool.c /systemd/src/network/networkd-address.c /systemd/src/network/networkd-dhcp4.c /systemd/src/network/networkd-fdb.c /systemd/src/network/networkd-link-bus.c /systemd/src/network/networkd-link.c /systemd/src/network/networkd-manager-bus.c /systemd/src/network/networkd-manager.c /systemd/src/network/networkd-netdev-bond.c /systemd/src/network/networkd-netdev-tuntap.c /systemd/src/network/networkd-netdev.c /systemd/src/network/networkd-network-bus.c /systemd/src/network/networkd-network.c /systemd/src/network/networkd-route.c /systemd/src/network/networkd-wait-online-link.c /systemd/src/network/networkd-wait-online-manager.c /systemd/src/network/test-network.c /systemd/src/notify/notify.c /systemd/src/nspawn/nspawn-cgroup.c /systemd/src/nspawn/nspawn-expose-ports.c /systemd/src/nspawn/nspawn-mount.c /systemd/src/nspawn/nspawn-network.c /systemd/src/nspawn/nspawn-settings.c /systemd/src/nspawn/nspawn-setuid.c /systemd/src/nspawn/nspawn.c /systemd/src/nss-myhostname/nss-myhostname.c /systemd/src/nss-mymachines/nss-mymachines.c /systemd/src/path/path.c /systemd/src/random-seed/random-seed.c /systemd/src/rc-local-generator/rc-local-generator.c /systemd/src/resolve-host/resolve-host.c /systemd/src/resolve/resolved-bus.c /systemd/src/resolve/resolved-conf.c /systemd/src/resolve/resolved-dns-answer.c /systemd/src/resolve/resolved-dns-cache.c /systemd/src/resolve/resolved-dns-packet.c /systemd/src/resolve/resolved-dns-query.c /systemd/src/resolve/resolved-dns-question.c /systemd/src/resolve/resolved-dns-rr.c /systemd/src/resolve/resolved-dns-scope.c /systemd/src/resolve/resolved-dns-server.c /systemd/src/resolve/resolved-dns-stream.c /systemd/src/resolve/resolved-dns-transaction.c /systemd/src/resolve/resolved-dns-zone.c /systemd/src/resolve/resolved-link.c /systemd/src/resolve/resolved-manager.c /systemd/src/rfkill/rfkill.c /systemd/src/run/run.c /systemd/src/shared/acl-util.c /systemd/src/shared/acpi-fpdt.c /systemd/src/shared/apparmor-util.c /systemd/src/shared/ask-password-api.c /systemd/src/shared/base-filesystem.c /systemd/src/shared/bus-util.c /systemd/src/shared/cgroup-show.c /systemd/src/shared/condition.c /systemd/src/shared/conf-parser.c /systemd/src/shared/dev-setup.c /systemd/src/shared/dns-domain.c /systemd/src/shared/dropin.c /systemd/src/shared/efivars.c /systemd/src/shared/firewall-util.c /systemd/src/shared/fstab-util.c /systemd/src/shared/generator.c /systemd/src/shared/import-util.c /systemd/src/shared/install-printf.c /systemd/src/shared/install.c /systemd/src/shared/logs-show.c /systemd/src/shared/machine-image.c /systemd/src/shared/machine-pool.c /systemd/src/shared/path-lookup.c /systemd/src/shared/ptyfwd.c /systemd/src/shared/sleep-config.c /systemd/src/shared/specifier.c /systemd/src/shared/utmp-wtmp.c /systemd/src/socket-proxy/socket-proxyd.c /systemd/src/systemctl/systemctl.c /systemd/src/sysusers/sysusers.c /systemd/src/sysv-generator/sysv-generator.c /systemd/src/test/test-calendarspec.c /systemd/src/test/test-cap-list.c /systemd/src/test/test-cgroup-util.c /systemd/src/test/test-condition.c /systemd/src/test/test-conf-files.c /systemd/src/test/test-copy.c /systemd/src/test/test-date.c /systemd/src/test/test-device-nodes.c /systemd/src/test/test-dns-domain.c /systemd/src/test/test-ellipsize.c /systemd/src/test/test-fileio.c /systemd/src/test/test-fstab-util.c /systemd/src/test/test-hashmap-plain.c /systemd/src/test/test-hostname-util.c /systemd/src/test/test-id128.c /systemd/src/test/test-json.c /systemd/src/test/test-namespace.c /systemd/src/test/test-path-util.c /systemd/src/test/test-path.c /systemd/src/test/test-prioq.c /systemd/src/test/test-process-util.c /systemd/src/test/test-socket-util.c /systemd/src/test/test-strv.c /systemd/src/test/test-tmpfiles.c /systemd/src/test/test-uid-range.c /systemd/src/test/test-unit-file.c /systemd/src/test/test-unit-name.c /systemd/src/test/test-user-util.c /systemd/src/test/test-utf8.c /systemd/src/test/test-util.c /systemd/src/test/test-xml.c /systemd/src/timedate/timedated.c /systemd/src/timesync/timesyncd-conf.c /systemd/src/timesync/timesyncd-manager.c /systemd/src/timesync/timesyncd-server.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/udev/collect/collect.c /systemd/src/udev/net/link-config.c /systemd/src/udev/udev-builtin-blkid.c /systemd/src/udev/udev-builtin-hwdb.c /systemd/src/udev/udev-builtin-net_setup_link.c /systemd/src/udev/udev-builtin-path_id.c /systemd/src/udev/udev-builtin-usb_id.c /systemd/src/udev/udev-ctrl.c /systemd/src/udev/udev-event.c /systemd/src/udev/udev-rules.c /systemd/src/udev/udevadm-hwdb.c /systemd/src/udev/udevd.c /systemd/src/update-utmp/update-utmp.c /systemd/src/vconsole/vconsole-setup.c
8fcde01280adcbd07e8205b91ac52b06305b6208 27-Oct-2015 Lennart Poettering <lennart@poettering.net>

util-lib: split stat()/statfs()/stavfs() related calls into stat-util.[ch]

/systemd/Makefile.am /systemd/src/basic/mkdir.c /systemd/src/basic/path-util.c /systemd/src/basic/path-util.h /systemd/src/basic/rm-rf.c /systemd/src/basic/stat-util.c /systemd/src/basic/stat-util.h /systemd/src/basic/terminal-util.c /systemd/src/basic/util.c /systemd/src/basic/util.h dbus-manager.c device.c load-fragment.c machine-id-setup.c main.c manager.c path.c unit.c /systemd/src/delta/delta.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/journal-remote/journal-remote.c /systemd/src/libsystemd/sd-device/sd-device.c /systemd/src/network/networkd-netdev.c /systemd/src/network/networkd-network.c /systemd/src/nspawn/nspawn-mount.c /systemd/src/nspawn/nspawn-register.c /systemd/src/nspawn/nspawn.c /systemd/src/shared/condition.c /systemd/src/shared/install.c /systemd/src/shared/machine-pool.c /systemd/src/systemctl/systemctl.c /systemd/src/sysv-generator/sysv-generator.c /systemd/src/test/test-util.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/udev/net/link-config.c /systemd/src/udev/udev-rules.c
5f311f8c0e51e2f13773823feb6a71f7c6f2838c 27-Oct-2015 Lennart Poettering <lennart@poettering.net>

util: remove path_get_parent(), in favour of dirname_malloc() We don't need two functions that do essentialy the same, hence drop path_get_parent(), and stick to dirname_malloc(), but move it to path-util.[ch].

6bedfcbb2970e06a4d3280c8fb62083d252ede73 27-Oct-2015 Lennart Poettering <lennart@poettering.net>

util-lib: split string parsing related calls from util.[ch] into parse-util.[ch]

/systemd/Makefile.am /systemd/src/analyze/analyze.c /systemd/src/backlight/backlight.c /systemd/src/basic/audit.c /systemd/src/basic/cap-list.c /systemd/src/basic/capability.c /systemd/src/basic/cgroup-util.c /systemd/src/basic/cpu-set-util.c /systemd/src/basic/fd-util.c /systemd/src/basic/fdset.c /systemd/src/basic/log.c /systemd/src/basic/parse-util.c /systemd/src/basic/parse-util.h /systemd/src/basic/path-util.c /systemd/src/basic/signal-util.c /systemd/src/basic/signal-util.h /systemd/src/basic/socket-util.c /systemd/src/basic/terminal-util.c /systemd/src/basic/user-util.c /systemd/src/basic/util.c /systemd/src/basic/util.h /systemd/src/bootchart/bootchart.c /systemd/src/bootchart/store.c /systemd/src/cgtop/cgtop.c automount.c busname.c cgroup.c dbus-execute.c device.c execute.c job.c killall.c load-fragment.c main.c manager.c mount.c service.c show-status.c shutdown.c snapshot.c snapshot.h socket.c swap.c timer.c unit.c /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/debug-generator/debug-generator.c /systemd/src/delta/delta.c /systemd/src/firstboot/firstboot.c /systemd/src/fsck/fsck.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/hostname/hostnamed.c /systemd/src/import/importd.c /systemd/src/import/pull-job.c /systemd/src/import/pull.c /systemd/src/journal-remote/journal-gatewayd.c /systemd/src/journal-remote/journal-remote-parse.c /systemd/src/journal-remote/journal-remote.c /systemd/src/journal-remote/journal-upload.c /systemd/src/journal/cat.c /systemd/src/journal/coredump.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journal-file.c /systemd/src/journal/journal-vacuum.c /systemd/src/journal/journalctl.c /systemd/src/journal/journald-console.c /systemd/src/journal/journald-kmsg.c /systemd/src/journal/journald-native.c /systemd/src/journal/journald-server.c /systemd/src/journal/journald-stream.c /systemd/src/journal/test-compress-benchmark.c /systemd/src/journal/test-journal-init.c /systemd/src/journal/test-journal-interleaving.c /systemd/src/journal/test-journal-stream.c /systemd/src/libsystemd-network/network-internal.c /systemd/src/libsystemd-network/sd-dhcp-lease.c /systemd/src/libsystemd-network/test-ipv4ll-manual.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-daemon/sd-daemon.c /systemd/src/libsystemd/sd-device/device-private.c /systemd/src/libsystemd/sd-device/sd-device.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-network/sd-network.c /systemd/src/libudev/libudev-device.c /systemd/src/login/loginctl.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user.c /systemd/src/login/pam_systemd.c /systemd/src/machine/machine.c /systemd/src/machine/machinectl.c /systemd/src/network/networkctl.c /systemd/src/network/networkd-address.c /systemd/src/network/networkd-link-bus.c /systemd/src/network/networkd-netdev-tunnel.c /systemd/src/network/networkd-network.c /systemd/src/network/networkd-route.c /systemd/src/network/networkd-util.c /systemd/src/notify/notify.c /systemd/src/nspawn/nspawn-expose-ports.c /systemd/src/nspawn/nspawn-mount.c /systemd/src/nspawn/nspawn.c /systemd/src/resolve-host/resolve-host.c /systemd/src/resolve/resolved-conf.c /systemd/src/resolve/resolved-link.c /systemd/src/resolve/resolved-manager.c /systemd/src/rfkill/rfkill.c /systemd/src/run/run.c /systemd/src/shared/apparmor-util.c /systemd/src/shared/bus-util.c /systemd/src/shared/condition.c /systemd/src/shared/conf-parser.c /systemd/src/shared/dns-domain.c /systemd/src/shared/efivars.c /systemd/src/shared/fstab-util.c /systemd/src/shared/logs-show.c /systemd/src/shared/machine-pool.c /systemd/src/shared/sleep-config.c /systemd/src/systemctl/systemctl.c /systemd/src/test/test-btrfs.c /systemd/src/test/test-cap-list.c /systemd/src/test/test-cgroup-util.c /systemd/src/test/test-fileio.c /systemd/src/test/test-util.c /systemd/src/timedate/timedatectl.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/udev/net/link-config.c /systemd/src/udev/udev-builtin-keyboard.c /systemd/src/udev/udevadm-settle.c /systemd/src/udev/udevd.c
b1d4f8e154bf61b5de1b27461ef8e9c8c5e838a1 26-Oct-2015 Lennart Poettering <lennart@poettering.net>

util-lib: split out user/group/uid/gid calls into user-util.[ch]

/systemd/Makefile.am /systemd/src/basic/audit.c /systemd/src/basic/cgroup-util.c /systemd/src/basic/process-util.c /systemd/src/basic/user-util.c /systemd/src/basic/user-util.h /systemd/src/basic/util.c /systemd/src/basic/util.h /systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/bus-xml-policy.c /systemd/src/bus-proxyd/stdio-bridge.c bus-policy.c execute.c main.c socket.c timer.c unit-printf.c unit.c /systemd/src/journal/coredump-vacuum.c /systemd/src/journal/coredump.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journalctl.c /systemd/src/libsystemd/sd-bus/bus-socket.c /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-path/sd-path.c /systemd/src/login/inhibit.c /systemd/src/login/loginctl.c /systemd/src/login/logind-action.c /systemd/src/login/logind-core.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user-dbus.c /systemd/src/login/logind-utmp.c /systemd/src/machine/machined-dbus.c /systemd/src/network/networkd-netdev-tuntap.c /systemd/src/network/networkd.c /systemd/src/nspawn/nspawn-setuid.c /systemd/src/nspawn/nspawn.c /systemd/src/nss-mymachines/nss-mymachines.c /systemd/src/resolve/resolved.c /systemd/src/run/run.c /systemd/src/shared/acl-util.c /systemd/src/shared/install-printf.c /systemd/src/shared/uid-range.c /systemd/src/shared/utmp-wtmp.c /systemd/src/systemctl/systemctl.c /systemd/src/sysusers/sysusers.c /systemd/src/test/test-ipcrm.c /systemd/src/test/test-util.c /systemd/src/timesync/timesyncd.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/udev/udev-rules.c
07630cea1f3a845c09309f197ac7c4f11edd3b62 24-Oct-2015 Lennart Poettering <lennart@poettering.net>

util-lib: split our string related calls from util.[ch] into its own file string-util.[ch] There are more than enough calls doing string manipulations to deserve its own files, hence do something about it. This patch also sorts the #include blocks of all files that needed to be updated, according to the sorting suggestions from CODING_STYLE. Since pretty much every file needs our string manipulation functions this effectively means that most files have sorted #include blocks now. Also touches a few unrelated include files.

/systemd/Makefile.am /systemd/src/activate/activate.c /systemd/src/backlight/backlight.c /systemd/src/basic/btrfs-util.c /systemd/src/basic/calendarspec.c /systemd/src/basic/cgroup-util.c /systemd/src/basic/clock-util.c /systemd/src/basic/conf-files.c /systemd/src/basic/copy.c /systemd/src/basic/env-util.c /systemd/src/basic/fdset.c /systemd/src/basic/fileio.c /systemd/src/basic/hostname-util.c /systemd/src/basic/json.c /systemd/src/basic/locale-util.c /systemd/src/basic/log.c /systemd/src/basic/log.h /systemd/src/basic/login-util.c /systemd/src/basic/memfd-util.c /systemd/src/basic/path-util.c /systemd/src/basic/process-util.c /systemd/src/basic/rm-rf.c /systemd/src/basic/signal-util.c /systemd/src/basic/socket-util.c /systemd/src/basic/string-util.c /systemd/src/basic/string-util.h /systemd/src/basic/strv.c /systemd/src/basic/terminal-util.c /systemd/src/basic/time-util.c /systemd/src/basic/unit-name.c /systemd/src/basic/util.c /systemd/src/basic/util.h /systemd/src/basic/verbs.c /systemd/src/basic/virt.c /systemd/src/basic/xml.c /systemd/src/binfmt/binfmt.c /systemd/src/boot/bootctl.c /systemd/src/bootchart/bootchart.c /systemd/src/bootchart/store.c /systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/bus-xml-policy.c /systemd/src/bus-proxyd/driver.c /systemd/src/bus-proxyd/proxy.h /systemd/src/bus-proxyd/synthesize.c /systemd/src/bus-proxyd/synthesize.h /systemd/src/bus-proxyd/test-bus-xml-policy.c /systemd/src/cgroups-agent/cgroups-agent.c automount.c busname.c busname.h cgroup.c dbus-automount.c dbus-busname.c dbus-cgroup.h dbus-execute.h dbus-job.c dbus-job.h dbus-kill.h dbus-manager.c dbus-mount.c dbus-mount.h dbus-path.c dbus-service.c dbus-socket.c dbus-swap.c dbus-target.h dbus-unit.c dbus.c device.c execute.c hostname-setup.c job.c job.h killall.c load-fragment.c locale-setup.c loopback-setup.c machine-id-setup.c manager.c mount.c namespace.c path.c scope.c selinux-setup.c service.c show-status.c shutdown.c slice.c smack-setup.c snapshot.c socket.c swap.c swap.h target.c timer.c umount.c unit-printf.c unit.c /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/debug-generator/debug-generator.c /systemd/src/delta/delta.c /systemd/src/escape/escape.c /systemd/src/firstboot/firstboot.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/getty-generator/getty-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/hibernate-resume/hibernate-resume-generator.c /systemd/src/hwdb/hwdb.c /systemd/src/import/aufs-util.c /systemd/src/import/curl-util.c /systemd/src/import/curl-util.h /systemd/src/import/export-raw.c /systemd/src/import/export-tar.c /systemd/src/import/export.c /systemd/src/import/import-raw.c /systemd/src/import/import-tar.c /systemd/src/import/import.c /systemd/src/import/pull-common.c /systemd/src/import/pull-dkr.c /systemd/src/import/pull-job.c /systemd/src/import/pull-raw.c /systemd/src/import/pull-tar.c /systemd/src/import/pull.c /systemd/src/journal-remote/journal-remote-parse.c /systemd/src/journal-remote/journal-remote.c /systemd/src/journal-remote/journal-upload.c /systemd/src/journal-remote/microhttpd-util.c /systemd/src/journal/cat.c /systemd/src/journal/catalog.c /systemd/src/journal/compress.c /systemd/src/journal/coredump-vacuum.c /systemd/src/journal/coredump.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journal-file.c /systemd/src/journal/journal-internal.h /systemd/src/journal/journal-send.c /systemd/src/journal/journal-vacuum.c /systemd/src/journal/journald-audit.c /systemd/src/journal/journald-kmsg.c /systemd/src/journal/journald-native.c /systemd/src/journal/journald-rate-limit.c /systemd/src/journal/journald-server.c /systemd/src/journal/journald-stream.c /systemd/src/journal/journald-syslog.c /systemd/src/journal/journald-wall.c /systemd/src/journal/sd-journal.c /systemd/src/journal/stacktrace.c /systemd/src/journal/test-catalog.c /systemd/src/journal/test-compress-benchmark.c /systemd/src/journal/test-journal-enum.c /systemd/src/journal/test-journal-flush.c /systemd/src/journal/test-journal-match.c /systemd/src/journal/test-journal-syslog.c /systemd/src/libsystemd-network/dhcp-identifier.c /systemd/src/libsystemd-network/dhcp-identifier.h /systemd/src/libsystemd-network/dhcp-internal.h /systemd/src/libsystemd-network/dhcp6-internal.h /systemd/src/libsystemd-network/lldp-internal.c /systemd/src/libsystemd-network/lldp-internal.h /systemd/src/libsystemd-network/network-internal.c /systemd/src/libsystemd-network/sd-dhcp-client.c /systemd/src/libsystemd-network/sd-dhcp-lease.c /systemd/src/libsystemd-network/sd-dhcp-server.c /systemd/src/libsystemd-network/sd-dhcp6-client.c /systemd/src/libsystemd-network/sd-ipv4acd.c /systemd/src/libsystemd-network/sd-ipv4ll.c /systemd/src/libsystemd-network/sd-lldp.c /systemd/src/libsystemd-network/sd-ndisc.c /systemd/src/libsystemd-network/sd-pppoe.c /systemd/src/libsystemd-network/test-dhcp-client.c /systemd/src/libsystemd-network/test-dhcp-server.c /systemd/src/libsystemd-network/test-dhcp6-client.c /systemd/src/libsystemd-network/test-ipv4ll-manual.c /systemd/src/libsystemd-network/test-ipv4ll.c /systemd/src/libsystemd-network/test-lldp.c /systemd/src/libsystemd-network/test-ndisc-rs.c /systemd/src/libsystemd/sd-bus/bus-control.c /systemd/src/libsystemd/sd-bus/bus-convenience.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-dump.c /systemd/src/libsystemd/sd-bus/bus-error.c /systemd/src/libsystemd/sd-bus/bus-internal.c /systemd/src/libsystemd/sd-bus/bus-internal.h /systemd/src/libsystemd/sd-bus/bus-introspect.c /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/bus-match.c /systemd/src/libsystemd/sd-bus/bus-match.h /systemd/src/libsystemd/sd-bus/bus-message.c /systemd/src/libsystemd/sd-bus/bus-message.h /systemd/src/libsystemd/sd-bus/bus-objects.c /systemd/src/libsystemd/sd-bus/bus-slot.c /systemd/src/libsystemd/sd-bus/bus-socket.c /systemd/src/libsystemd/sd-bus/bus-type.h /systemd/src/libsystemd/sd-bus/busctl-introspect.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-bus/test-bus-benchmark.c /systemd/src/libsystemd/sd-bus/test-bus-chat.c /systemd/src/libsystemd/sd-bus/test-bus-cleanup.c /systemd/src/libsystemd/sd-bus/test-bus-gvariant.c /systemd/src/libsystemd/sd-bus/test-bus-kernel-bloom.c /systemd/src/libsystemd/sd-bus/test-bus-kernel.c /systemd/src/libsystemd/sd-bus/test-bus-marshal.c /systemd/src/libsystemd/sd-bus/test-bus-objects.c /systemd/src/libsystemd/sd-bus/test-bus-proxy.c /systemd/src/libsystemd/sd-bus/test-bus-server.c /systemd/src/libsystemd/sd-bus/test-bus-signature.c /systemd/src/libsystemd/sd-bus/test-bus-zero-copy.c /systemd/src/libsystemd/sd-daemon/sd-daemon.c /systemd/src/libsystemd/sd-device/device-enumerator.c /systemd/src/libsystemd/sd-device/device-private.c /systemd/src/libsystemd/sd-device/device-private.h /systemd/src/libsystemd/sd-device/sd-device.c /systemd/src/libsystemd/sd-event/event-util.h /systemd/src/libsystemd/sd-event/sd-event.c /systemd/src/libsystemd/sd-hwdb/hwdb-util.h /systemd/src/libsystemd/sd-hwdb/sd-hwdb.c /systemd/src/libsystemd/sd-id128/sd-id128.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-login/test-login.c /systemd/src/libsystemd/sd-netlink/netlink-internal.h /systemd/src/libsystemd/sd-netlink/netlink-message.c /systemd/src/libsystemd/sd-netlink/netlink-socket.c /systemd/src/libsystemd/sd-netlink/netlink-util.c /systemd/src/libsystemd/sd-netlink/netlink-util.h /systemd/src/libsystemd/sd-netlink/rtnl-message.c /systemd/src/libsystemd/sd-netlink/sd-netlink.c /systemd/src/libsystemd/sd-netlink/test-netlink.c /systemd/src/libsystemd/sd-network/sd-network.c /systemd/src/libsystemd/sd-path/sd-path.c /systemd/src/libsystemd/sd-resolve/resolve-util.h /systemd/src/libsystemd/sd-resolve/sd-resolve.c /systemd/src/libsystemd/sd-resolve/test-resolve.c /systemd/src/libsystemd/sd-utf8/sd-utf8.c /systemd/src/libudev/libudev-device-internal.h /systemd/src/libudev/libudev-device-private.c /systemd/src/libudev/libudev-device.c /systemd/src/libudev/libudev-enumerate.c /systemd/src/libudev/libudev-hwdb.c /systemd/src/libudev/libudev-monitor.c /systemd/src/libudev/libudev-private.h /systemd/src/libudev/libudev-util.c /systemd/src/libudev/libudev.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-acl.h /systemd/src/login/logind-action.h /systemd/src/login/logind-button.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-session-device.c /systemd/src/login/logind.c /systemd/src/login/logind.h /systemd/src/login/sysfs-show.c /systemd/src/login/test-inhibit.c /systemd/src/machine/machined.h /systemd/src/modules-load/modules-load.c /systemd/src/network/networkctl.c /systemd/src/network/networkd-address-pool.c /systemd/src/network/networkd-address.c /systemd/src/network/networkd-dhcp6.c /systemd/src/network/networkd-link.h /systemd/src/network/networkd-manager.c /systemd/src/network/networkd-ndisc.c /systemd/src/network/networkd-netdev-bond.c /systemd/src/network/networkd-netdev-tunnel.c /systemd/src/network/networkd-netdev.c /systemd/src/network/networkd-network-bus.c /systemd/src/network/networkd-network.c /systemd/src/network/networkd-route.c /systemd/src/network/networkd-util.c /systemd/src/network/networkd-wait-online-link.c /systemd/src/notify/notify.c /systemd/src/nspawn/nspawn-cgroup.c /systemd/src/nspawn/nspawn-expose-ports.c /systemd/src/nspawn/nspawn-mount.c /systemd/src/nspawn/nspawn-network.c /systemd/src/nspawn/nspawn-setuid.c /systemd/src/nspawn/nspawn.c /systemd/src/nss-myhostname/nss-myhostname.c /systemd/src/nss-mymachines/nss-mymachines.c /systemd/src/nss-resolve/nss-resolve.c /systemd/src/path/path.c /systemd/src/quotacheck/quotacheck.c /systemd/src/random-seed/random-seed.c /systemd/src/rc-local-generator/rc-local-generator.c /systemd/src/reply-password/reply-password.c /systemd/src/resolve/resolved-conf.c /systemd/src/resolve/resolved-dns-answer.c /systemd/src/resolve/resolved-dns-rr.c /systemd/src/resolve/resolved-dns-zone.c /systemd/src/resolve/resolved-link.c /systemd/src/resolve/resolved-manager.c /systemd/src/rfkill/rfkill.c /systemd/src/shared/acl-util.c /systemd/src/shared/architecture.c /systemd/src/shared/ask-password-api.c /systemd/src/shared/base-filesystem.c /systemd/src/shared/bus-util.c /systemd/src/shared/bus-util.h /systemd/src/shared/cgroup-show.c /systemd/src/shared/clean-ipc.c /systemd/src/shared/condition.c /systemd/src/shared/conf-parser.c /systemd/src/shared/dns-domain.c /systemd/src/shared/dropin.c /systemd/src/shared/fstab-util.c /systemd/src/shared/generator.c /systemd/src/shared/import-util.c /systemd/src/shared/install.c /systemd/src/shared/logs-show.c /systemd/src/shared/machine-image.c /systemd/src/shared/machine-pool.c /systemd/src/shared/pager.c /systemd/src/shared/path-lookup.c /systemd/src/shared/seccomp-util.c /systemd/src/shared/sleep-config.c /systemd/src/shared/specifier.c /systemd/src/shared/switch-root.c /systemd/src/shared/sysctl-util.c /systemd/src/shared/utmp-wtmp.c /systemd/src/sleep/sleep.c /systemd/src/socket-proxy/socket-proxyd.c /systemd/src/sysctl/sysctl.c /systemd/src/system-update-generator/system-update-generator.c /systemd/src/systemd/sd-dhcp6-client.h /systemd/src/systemd/sd-lldp.h /systemd/src/sysusers/sysusers.c /systemd/src/sysv-generator/sysv-generator.c /systemd/src/test/test-af-list.c /systemd/src/test/test-arphrd-list.c /systemd/src/test/test-btrfs.c /systemd/src/test/test-calendarspec.c /systemd/src/test/test-cgroup-util.c /systemd/src/test/test-cgroup.c /systemd/src/test/test-condition.c /systemd/src/test/test-conf-files.c /systemd/src/test/test-conf-parser.c /systemd/src/test/test-copy.c /systemd/src/test/test-date.c /systemd/src/test/test-device-nodes.c /systemd/src/test/test-dns-domain.c /systemd/src/test/test-ellipsize.c /systemd/src/test/test-env-replace.c /systemd/src/test/test-fileio.c /systemd/src/test/test-fstab-util.c /systemd/src/test/test-hashmap-plain.c /systemd/src/test/test-hostname-util.c /systemd/src/test/test-id128.c /systemd/src/test/test-json.c /systemd/src/test/test-libudev.c /systemd/src/test/test-namespace.c /systemd/src/test/test-netlink-manual.c /systemd/src/test/test-path-lookup.c /systemd/src/test/test-path-util.c /systemd/src/test/test-path.c /systemd/src/test/test-process-util.c /systemd/src/test/test-replace-var.c /systemd/src/test/test-socket-util.c /systemd/src/test/test-strbuf.c /systemd/src/test/test-strip-tab-ansi.c /systemd/src/test/test-strv.c /systemd/src/test/test-strxcpyx.c /systemd/src/test/test-tmpfiles.c /systemd/src/test/test-udev.c /systemd/src/test/test-unit-file.c /systemd/src/test/test-unit-name.c /systemd/src/test/test-utf8.c /systemd/src/test/test-util.c /systemd/src/test/test-xml.c /systemd/src/timesync/timesyncd-conf.c /systemd/src/timesync/timesyncd-manager.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/udev/ata_id/ata_id.c /systemd/src/udev/cdrom_id/cdrom_id.c /systemd/src/udev/collect/collect.c /systemd/src/udev/net/link-config.c /systemd/src/udev/net/link-config.h /systemd/src/udev/scsi_id/scsi_id.c /systemd/src/udev/scsi_id/scsi_serial.c /systemd/src/udev/udev-builtin-blkid.c /systemd/src/udev/udev-builtin-btrfs.c /systemd/src/udev/udev-builtin-hwdb.c /systemd/src/udev/udev-builtin-input_id.c /systemd/src/udev/udev-builtin-keyboard.c /systemd/src/udev/udev-builtin-kmod.c /systemd/src/udev/udev-builtin-net_id.c /systemd/src/udev/udev-builtin-path_id.c /systemd/src/udev/udev-builtin-usb_id.c /systemd/src/udev/udev-builtin.c /systemd/src/udev/udev-event.c /systemd/src/udev/udev-node.c /systemd/src/udev/udev-rules.c /systemd/src/udev/udev.h /systemd/src/udev/udevadm-hwdb.c /systemd/src/udev/udevadm-info.c /systemd/src/udev/udevadm-test-builtin.c /systemd/src/udev/udevadm-test.c /systemd/src/udev/udevadm-trigger.c /systemd/src/udev/udevadm-util.c /systemd/src/udev/udevadm.c /systemd/src/udev/udevd.c /systemd/src/user-sessions/user-sessions.c /systemd/src/vconsole/vconsole-setup.c
4f5dd3943bef8a04be7e3b838b822bb9a7ad6cb3 24-Oct-2015 Lennart Poettering <lennart@poettering.net>

util: split out escaping code into escape.[ch] This really deserves its own file, given how much code this is now.

/systemd/Makefile.am /systemd/src/backlight/backlight.c /systemd/src/basic/escape.c /systemd/src/basic/escape.h /systemd/src/basic/extract-word.c /systemd/src/basic/fileio.c /systemd/src/basic/process-util.c /systemd/src/basic/strv.c /systemd/src/basic/util.c /systemd/src/basic/util.h job.c load-fragment.c manager.c mount.c service.c swap.c umount.c unit.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/import/pull-common.c /systemd/src/journal-remote/journal-remote.c /systemd/src/journal/coredump.c /systemd/src/journal/journald-kmsg.c /systemd/src/journal/journald-stream.c /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user.c /systemd/src/machine/machine.c /systemd/src/nspawn/nspawn-mount.c /systemd/src/rfkill/rfkill.c /systemd/src/shared/bus-util.c /systemd/src/shared/dropin.c /systemd/src/shared/generator.c /systemd/src/test/test-util.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/udev/udev-rules.c
b250ea2fd6fe35242a7d161a3b37bb756ae87be0 19-Oct-2015 Thomas Hindoe Paaboel Andersen <phomes@gmail.com>

tree-wide: remove unused functions

9806e87da22d0025d7c427907202e5751a6b5989 17-Oct-2015 Lennart Poettering <lennart@poettering.net>

unit: allocate bus name match string on the stack Let's use strjoina() rather than strjoin() for construct dbus match strings. Also, while we are at it, fix parameter ordering, so that our functions always put the object first, like it is customary for OO-like programming.

c7c89abb9edf9320246482bf4a8e0656199281ae 08-Oct-2015 Franck Bui <fbui@suse.com>

Make sure the mount units pulled by 'RequiresMountsFor=' are loaded (if they exist) We should make sure that mount units involved by 'RequiresMountsFor=' directives are really loaded if not required by any others units so that Requires= dependencies on the mount units are applied and thus the mount unit dependencies are started.

a34ceba66fc0e856d8f76f340389a4768b57a365 08-Oct-2015 Lennart Poettering <lennart@poettering.net>

core: add support for setting stdin/stdout/stderr for transient services When starting a transient service, allow setting stdin/stdout/stderr fds for it, by passing them in via the bus. This also simplifies some of the serialization code for units.

8c8da0e0cb498245c765732cf9caa081a70c560f 29-Sep-2015 Lennart Poettering <lennart@poettering.net>

core: add a "Requires=" dependency between units and the slices they are located in We place the processes we fork off in the cgroup anyway, and we probably shouldn't be able to get that far if we couldn't set up the slice due to resource problems or unmet conditions. Hence upgrade the dependency between units and the slices they are located in from Wants= to Requires=.

978c8b6347d61f5a792886ef1875a4df625fd65f 28-Sep-2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Move UnitActiveState to basic/ Preparation to allow systemctl to query the list of unit states.

ac5e3a505e49c80b56c971a8fc13bacac961640d 21-Sep-2015 Jan Synacek <jsynacek@redhat.com>

core: extend KillUnit() to return error when no unit was killed

32ee7d3309816994a02b3ff000e9734120d71214 16-Sep-2015 Daniel Mack <daniel@zonque.org>

cgroup: add support for net_cls controllers Add a new config directive called NetClass= to CGroup enabled units. Allowed values are positive numbers for fix assignments and "auto" for picking a free value automatically, for which we need to keep track of dynamically assigned net class IDs of units. Introduce a hash table for this, and also record the last ID that was given out, so the allocator can start its search for the next 'hole' from there. This could eventually be optimized with something like an irb. The class IDs up to 65536 are considered reserved and won't be assigned automatically by systemd. This barrier can be made a config directive in the future. Values set in unit files are stored in the CGroupContext of the unit and considered read-only. The actually assigned number (which may have been chosen dynamically) is stored in the unit itself and is guaranteed to remain stable as long as the unit is active. In the CGroup controller, set the configured CGroup net class to net_cls.classid. Multiple unit may share the same net class ID, and those which do are linked together.

5269eb6b32f662d21638e54bb13171a5b97fe58f 11-Sep-2015 Lennart Poettering <lennart@poettering.net>

core: allocate sets of startup and failed units on-demand There's a good chance we never needs these sets, hence allocate them only when needed.

d53d94743c5e5e3a4a668b0c707826a90a08949a 11-Sep-2015 Lennart Poettering <lennart@poettering.net>

core: refactor cpu shares/blockio weight cgroup logic Let's stop using the "unsigned long" type for weights/shares, and let's just use uint64_t for this, as that's what we expose on the bus. Unify parsers, and always validate the range for these fields. Correct the default blockio weight to 500, since that's what the kernel actually uses. When parsing the weight/shares settings from unit files accept the empty string as a way to reset the weight/shares value. When getting it via the bus, uniformly map (uint64_t) -1 to unset. Open up StartupCPUShares= and StartupBlockIOWeight= to transient units.

03a7b521e3ffb7f5d153d90480ba5d4bc29d1e8f 10-Sep-2015 Lennart Poettering <lennart@poettering.net>

core: add support for the "pids" cgroup controller This adds support for the new "pids" cgroup controller of 4.3 kernels. It allows accounting the number of tasks in a cgroup and enforcing limits on it. This adds two new setting TasksAccounting= and TasksMax= to each unit, as well as a gloabl option DefaultTasksAccounting=. This also updated "cgtop" to optionally make use of the new kernel-provided accounting. systemctl has been updated to show the number of tasks for each service if it is available. This patch also adds correct support for undoing memory limits for units using a MemoryLimit=infinity syntax. We do the same for TasksMax= now and hence keep things in sync here.

525d3cc746a037e8cc6b2e0ebaaf76a51856fa6b 09-Sep-2015 Lennart Poettering <lennart@poettering.net>

tree-wide: take benefit of the fact that hashmap_free() returns NULL And set_free() too. Another Coccinelle patch.

6796073e330f49923c5134652ee085e29fc88002 09-Sep-2015 Lennart Poettering <lennart@poettering.net>

tree-wide: make use of the fact that strv_free() returns NULL Another Coccinelle patch.

d11a76451f21dbec5dcc0d65444b76124764d3b5 07-Sep-2015 Lennart Poettering <lennart@poettering.net>

unit: move "not supported" check after condition check in unit_start() Make sure we always check conditions before checking whether the unit type is supported in unit_start(), since condition checks are "clean errors", while "not supported" errors are fatal. This cleans up the boot output of systemd in containers, where a lot of NOTSUPP lines were shown befor this fix. This partially reverts 8ff4d2ab0d4758e914aea6d86154d85f2b2c787f which reorder the checks.

75f86906c52735c98dc0aa7e24b773edb42ee814 07-Sep-2015 Lennart Poettering <lennart@poettering.net>

basic: rework virtualization detection API Introduce a proper enum, and don't pass around string ids anymore. This simplifies things quite a bit, and makes virtualization detection more similar to architecture detection.

/systemd/src/basic/util.c /systemd/src/basic/virt.c /systemd/src/basic/virt.h dbus-manager.c job.c locale-setup.c machine-id-setup.c main.c manager.c mount-setup.c shutdown.c swap.c umount.c unit.c /systemd/src/detect-virt/detect-virt.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/getty-generator/getty-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/hostname/hostnamed.c /systemd/src/libsystemd-network/dhcp-identifier.c /systemd/src/libsystemd-network/test-dhcp6-client.c /systemd/src/locale/localectl.c /systemd/src/network/networkd-link.c /systemd/src/network/networkd-manager.c /systemd/src/shared/condition.c /systemd/src/shared/efivars.c /systemd/src/test/test-architecture.c /systemd/src/test/test-process-util.c /systemd/src/vconsole/vconsole-setup.c
8ff4d2ab0d4758e914aea6d86154d85f2b2c787f 05-Sep-2015 Lennart Poettering <lennart@poettering.net>

unit: make unit_can_start() more accurate This funciton is exposed via CanStart on the bus, and should be as accurate as possible. Hence: make sure to return false for units of unit types not supported on the system, and for unit types where configuration failed to load. Also see #1105.

fea72cc0336f4d90875cdddc1aa9739dcbb174f5 04-Sep-2015 Lennart Poettering <lennart@poettering.net>

macro: introduce new PID_TO_PTR macros and make use of them This adds a new PID_TO_PTR() macro, plus PTR_TO_PID() and makes use of it wherever we maintain processes in a hash table. Previously we sometimes used LONG_TO_PTR() and other times ULONG_TO_PTR() for that, hence let's make this more explicit and clean up things.

efdb02375beb0a940c3320865572913780b4d7de 01-Sep-2015 Lennart Poettering <lennart@poettering.net>

core: unified cgroup hierarchy support This patch set adds full support the new unified cgroup hierarchy logic of modern kernels. A new kernel command line option "systemd.unified_cgroup_hierarchy=1" is added. If specified the unified hierarchy is mounted to /sys/fs/cgroup instead of a tmpfs. No further hierarchies are mounted. The kernel command line option defaults to off. We can turn it on by default as soon as the kernel's APIs regarding this are stabilized (but even then downstream distros might want to turn this off, as this will break any tools that access cgroupfs directly). It is possibly to choose for each boot individually whether the unified or the legacy hierarchy is used. nspawn will by default provide the legacy hierarchy to containers if the host is using it, and the unified otherwise. However it is possible to run containers with the unified hierarchy on a legacy host and vice versa, by setting the $UNIFIED_CGROUP_HIERARCHY environment variable for nspawn to 1 or 0, respectively. The unified hierarchy provides reliable cgroup empty notifications for the first time, via inotify. To make use of this we maintain one manager-wide inotify fd, and each cgroup to it. This patch also removes cg_delete() which is unused now. On kernel 4.2 only the "memory" controller is compatible with the unified hierarchy, hence that's the only controller systemd exposes when booted in unified heirarchy mode. This introduces a new enum for enumerating supported controllers, plus a related enum for the mask bits mapping to it. The core is changed to make use of this everywhere. This moves PID 1 into a new "init.scope" implicit scope unit in the root slice. This is necessary since on the unified hierarchy cgroups may either contain subgroups or processes but not both. PID 1 hence has to move out of the root cgroup (strictly speaking the root cgroup is the only one where processes and subgroups are still allowed, but in order to support containers nicey, we move PID 1 into the new scope in all cases.) This new unit is also used on legacy hierarchy setups. It's actually pretty useful on all systems, as it can then be used to filter journal messages coming from PID 1, and so on. The root slice ("-.slice") is now implicitly created and started (and does not require a unit file on disk anymore), since that's where "init.scope" is located and the slice needs to be started before the scope can. To check whether we are in unified or legacy hierarchy mode we use statfs() on /sys/fs/cgroup. If the .f_type field reports tmpfs we are in legacy mode, if it reports cgroupfs we are in unified mode. This patch set carefuly makes sure that cgls and cgtop continue to work as desired. When invoking nspawn as a service it will implicitly create two subcgroups in the cgroup it is using, one to move the nspawn process into, the other to move the actual container processes into. This is done because of the requirement that cgroups may either contain processes or other subgroups.

d06673212e7672da44d5147d1d393278d9b1b478 01-Sep-2015 Lennart Poettering <lennart@poettering.net>

core: rework when we kill with which signal When the user wants to explicitly send our own PID a signal, then do so. Don't follow up SIGABRT with a SIGHUP if send_sighup is enabled. At that point the process should have segfaulted, hence there's no point in following up with a SIGHUP. Send only termination signals to ourselves, never KILL or ABRT signals.

102ef9829ed72d3991cb73bc893880d715e667c5 01-Sep-2015 Lennart Poettering <lennart@poettering.net>

core: don't allow changing the slice of a unit while it is active

b821a397c0fd382266a6018c1b6738ced69f8041 01-Sep-2015 Lennart Poettering <lennart@poettering.net>

unit: small clean-ups Always say when we ignore errors. Cast calls whose return value we knowingly ingore to (void). Use "bool" where we actually mean a boolean, even if we return it as an int later on.

e9db43d5910717a1084924c512bf85e2b8265375 01-Sep-2015 Lennart Poettering <lennart@poettering.net>

units: enable waiting for unit termination in certain cases The legacy cgroup hierarchy does not support reliable empty notifications in containers and if there are left-over subgroups in a cgroup. This makes it hard to correctly wait for them running empty, and thus we previously disabled this logic entirely. With this change we explicitly check for the container case, and whether the unit is a "delegation" unit (i.e. one where programs may create their own subgroups). If we are neither in a container, nor operating on a delegation unit cgroup empty notifications become reliable and thus we start waiting for the empty notifications again. This doesn't really fix the general problem around cgroup notifications but reduces the effect around it. (This also reorders #include lines by their focus, as suggsted in CODING_STYLE. We have to add "virt.h", so let's do that at the right place.) Also see #317.

52f448c3fff64752649af4b8be5260c1a8a105ea 31-Aug-2015 Lennart Poettering <lennart@poettering.net>

unit: minor simplification

d79200e26ee39d4b451f95e876fc4595df51fe51 31-Aug-2015 Lennart Poettering <lennart@poettering.net>

unit: unify how we assing slices to units This adds a new call unit_set_slice(), and simplifies unit_add_default_slice(). THis should make our code a bit more robust and simpler.

35b7ff80e29524cb01f881ca6d52c669970c88f1 31-Aug-2015 Lennart Poettering <lennart@poettering.net>

unit: add new macros to test for unit contexts

3f5e811594bcdb25d3aa859cb0be06f6df3a03b9 31-Aug-2015 Lennart Poettering <lennart@poettering.net>

core: don't generate stub unit file for transient units We store the properties for transient units in drop-ins anyway, and units don't have to have fragment files, hence don't bother with them, and don't create them.

cf9fd50884bcd2fd3a54e0e0c0c83a7b3326ca9b 06-Aug-2015 Daniel Mack <daniel@zonque.org>

core: unit: remove bus slot after calling unit_done() The ->done callback in the unit's vtable might call into unit_unwatch_bus_name() and corrupt memory by that. Move the call down, and clean up the bus slot in case it hasn't been done yet.

bbc2908635ca3ded9162504683fa126809f0ec14 06-Aug-2015 Daniel Mack <daniel@zonque.org>

core: dbus: track bus names per unit Currently, PID1 installs an unfiltered NameOwnerChanged signal match, and dispatches the signals itself. This does not scale, as right now, PID1 wakes up every time a bus client connects. To fix this, install individual matches once they are requested by unit_watch_bus_name(), and remove the watches again through their slot in unit_unwatch_bus_name(). If the bus is not available during unit_watch_bus_name(), just store name in the 'watch_bus' hashmap, and let bus_setup_api() do the installing later.

b5bf308ba50ab0bac0f0caec2d8e4d5c75c107d0 21-Jul-2015 Michal Schmidt <mschmidt@redhat.com>

core: unit_get_status_message_format() never returns NULL unit_get_status_message_format() is used only with one of JOB_START, JOB_STOP, JOB_RELOAD, all of which have fallback message strings defined, so the function may never return NULL.

a85ca902c9f7f5aa8f2f3e3299147733802cf09d 21-Jul-2015 Michal Schmidt <mschmidt@redhat.com>

core: always try harder to get unit status message format string The starting/stopping messages are printed to the console only if the corresponding format string is defined in the unit's vtable. To avoid excessive messages on the console, the unit types whose start/stop jobs are instantaneous had the format strings intentionally undefined. When logging the same event to the journal, a fallback to generic Starting/Stopping/Reloading messages is used. The problem of excessive console messages with instantaneous jobs is already resolved in a nicer way ("core: fix confusing logging of instantaneous jobs"), so there's no longer a need to have two ways of getting the format strings. Let's fold them into one function with the fallback to generic message strings.

d1a34ae9c20f1c02aab17884919eccef572b1d21 21-Jul-2015 Michal Schmidt <mschmidt@redhat.com>

core: fix confusing logging of instantaneous jobs For instantaneous jobs (e.g. starting of targets, sockets, slices, or Type=simple services) the log shows the job completion before starting: systemd[1]: Created slice -.slice. systemd[1]: Starting -.slice. systemd[1]: Created slice System Slice. systemd[1]: Starting System Slice. systemd[1]: Listening on Journal Audit Socket. systemd[1]: Starting Journal Audit Socket. systemd[1]: Reached target Timers. systemd[1]: Starting Timers. ... The reason is that the job completes before the ->start() method returns and only then does unit_start() print the "Starting ..." message. The same thing happens when stopping units. Rather than fixing the order of the messages, let's just not emit the Starting/Stopping message at all when the job completes instantaneously. The job completion message is sufficient in this case.

084918ba41acbb80076c64e7338cf73101b1385e 23-Jun-2015 Abdo Roig-Maranges <abdo.roig@gmail.com>

core: fix reversed dependency check in unit_check_unneeded This was introduced by commit be7d9ff730cb88d7c6a8 and breaks StopWhenUnneeded=true in the presence of a Requisite dependency.

de1d4f9b5c6345f63edd46f643485eca909995bf 11-Jun-2015 Werner Fink <werner@suse.de>

core: Let two more booleans survive a daemon-reload Without the boolean bus_name_good services as well as cgroup_realized for units a unit of Type=dbus and ExecReload sending SIGHUP to $MAINPID will be terminated if systemd will be daemon reloaded. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=746151 https://bugs.freedesktop.org/show_bug.cgi?id=78311 https://bugzilla.opensuse.org/show_bug.cgi?id=934077

ed10fa8ce2e9cc4b78adb257a1b8fdc636bacea9 19-May-2015 Lennart Poettering <lennart@poettering.net>

unit: drop support for pre-v44 job serialization No distro ships that old systemd versions anyway, hence let's drop support for live-upgrades for them. Offline updates are still supported. And live-upgrades will only lose the job queue, hence basically still work...

67bfdc9771ce9d67b6ecff9982d2ecb89bdb2f6b 19-May-2015 Lennart Poettering <lennart@poettering.net>

core: also enforce ratelimiter if we stop a unit due to BindsTo= This extends on bea355dac94e82697aa98e25d80ee4248263bf92, and extends the ratelimiter to not only be used for StopWhenUnneeded=1 units but also for units that have BindsTo= on a unit that is dead. http://lists.freedesktop.org/archives/systemd-devel/2015-April/030224.html

bea355dac94e82697aa98e25d80ee4248263bf92 19-May-2015 Lennart Poettering <lennart@poettering.net>

core: enforce a ratelimiter when stopping units due to StopWhenUnneeded=1 Otherwise we might end up in an endless stop loop. http://lists.freedesktop.org/archives/systemd-devel/2015-April/030224.html

f3b85044c845de03de05135c1dd5f3298bf3e5a2 19-May-2015 Lennart Poettering <lennart@poettering.net>

unit: fix unit_check_unneeded() dependency iteration Fixes a regression introduced in be7d9ff730cb88d7c6a869dd5c47754c78ceaef2.

be7d9ff730cb88d7c6a869dd5c47754c78ceaef2 19-May-2015 Lennart Poettering <lennart@poettering.net>

core: introduce seperate reverse dependencies for Requires= and Requisite= This allows us to ensure that Requisite= dependencies never cause propagation between units, while Requires= dependencies might. http://lists.freedesktop.org/archives/systemd-devel/2015-May/031742.html

b2c23da8cea1987a1a329f5a964d3299b7ca7890 11-May-2015 Lennart Poettering <lennart@poettering.net>

core: rename SystemdRunningAs to ManagerRunningAs It's primarily just a property of the Manager object after all, and we try to refer to PID 1 as "manager" instead of "systemd", hence let's to stick to this here too.

8b4305c7354f572fa0390b7580ba30af741aa0a5 11-May-2015 Lennart Poettering <lennart@poettering.net>

unit: move unit_warn_if_dir_nonempty() and friend to unit.c The call is only used by the mount and automount unit types, but that's already enough to consider it generic unit functionality, hence move it out of mount.c and into unit.c.

f2341e0a87cab1558c84c933956e9181d5fb6c52 11-May-2015 Lennart Poettering <lennart@poettering.net>

core,network: major per-object logging rework This changes log_unit_info() (and friends) to take a real Unit* object insted of just a unit name as parameter. The call will now prefix all logged messages with the unit name, thus allowing the unit name to be dropped from the various passed romat strings, simplifying invocations drastically, and unifying log output across messages. Also, UNIT= vs. USER_UNIT= is now derived from the Manager object attached to the Unit object, instead of getpid(). This has the benefit of correcting the field for --test runs. Also contains a couple of other logging improvements: - Drops a couple of strerror() invocations in favour of using %m. - Not only .mount units now warn if a symlinks exist for the mount point already, .automount units do that too, now. - A few invocations of log_struct() that didn't actually pass any additional structured data have been replaced by simpler invocations of log_unit_info() and friends. - For structured data a new LOG_UNIT_MESSAGE() macro has been added, that works like LOG_MESSAGE() but prefixes the message with the unit name. Similar, there's now LOG_LINK_MESSAGE() and LOG_NETDEV_MESSAGE(). - For structured data new LOG_UNIT_ID(), LOG_LINK_INTERFACE(), LOG_NETDEV_INTERFACE() macros have been added that generate the necessary per object fields. The old log_unit_struct() call has been removed in favour of these new macros used in raw log_struct() invocations. In addition to removing one more function call this allows generated structured log messages that contain two object fields, as necessary for example for network interfaces that are joined into another network interface, and whose messages shall be indexed by both. - The LOG_ERRNO() macro has been removed, in favour of log_struct_errno(). The latter has the benefit of ensuring that %m in format strings is properly resolved to the specified error number. - A number of logging messages have been converted to use log_unit_info() instead of log_info() - The client code in sysv-generator no longer #includes core code from src/core/. - log_unit_full_errno() has been removed, log_unit_full() instead takes an errno now, too. - log_unit_info(), log_link_info(), log_netdev_info() and friends, now avoid double evaluation of their parameters

7410616cd9dbbec97cf98d75324da5cda2b2f7a2 06-May-2015 Lennart Poettering <lennart@poettering.net>

core: rework unit name validation and manipulation logic A variety of changes: - Make sure all our calls distuingish OOM from other errors if OOM is not the only error possible. - Be much stricter when parsing escaped paths, do not accept trailing or leading escaped slashes. - Change unit validation to take a bit mask for allowing plain names, instance names or template names or an combination thereof. - Refuse manipulating invalid unit name

automount.c busname.c dbus-unit.c device.c load-fragment.c manager.c mount.c snapshot.c socket.c swap.c unit-printf.c unit.c /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/dbus1-generator/dbus1-generator.c /systemd/src/debug-generator/debug-generator.c /systemd/src/escape/escape.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/getty-generator/getty-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/hibernate-resume/hibernate-resume-generator.c /systemd/src/journal/journalctl.c /systemd/src/login/logind-user.c /systemd/src/machine/machinectl.c /systemd/src/run/run.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/dropin.c /systemd/src/shared/generator.c /systemd/src/shared/install-printf.c /systemd/src/shared/install.c /systemd/src/shared/unit-name.c /systemd/src/shared/unit-name.h /systemd/src/systemctl/systemctl.c /systemd/src/sysv-generator/sysv-generator.c /systemd/src/test/test-unit-name.c
1c2e9646e4a1720fc8ad35c705c195ae1a2c5ce0 30-Apr-2015 Lennart Poettering <lennart@poettering.net>

core: simplify unit type detection logic Introduce a new call unit_type_supported() and make use of it everywhere. Also, drop Manager parameter from per-type supported method prototype.

bf74cd6549903090a62f9ad07033b8ec24ec5828 28-Apr-2015 Martin Pitt <martin.pitt@ubuntu.com>

unit: Drop unused variables src/core/unit.c: In function 'unit_coldplug': src/core/unit.c:2884:18: warning: unused variable 'i' [-Wunused-variable] Iterator i; ^ src/core/unit.c:2883:15: warning: unused variable 'other' [-Wunused-variable] Unit *other; ^

4370633083dd9453da183c468cf89cc17254ac39 27-Apr-2015 Ivan Shapovalov <intelfx100@gmail.com>

core: coldplug all units which participate in jobs during coldplugging This is yet another attempt to fix coldplugging order (more especially, the problem which happens when one creates a job during coldplugging and it references a not-yet-coldplugged unit). Now we forcibly coldplug all units which participate in jobs. This is a superset of previously implemented handling of the UNIT_TRIGGERS dependencies, so that handling is removed. http://lists.freedesktop.org/archives/systemd-devel/2015-April/031212.html https://bugs.freedesktop.org/show_bug.cgi?id=88401 (once again)

742f41adb1b7251fcdf2201632c2a980282cdcc4 24-Apr-2015 Lennart Poettering <lennart@poettering.net>

core: minor simplification

47bc12e1ba35d38edda737dae232088d6d3ae688 24-Apr-2015 Lennart Poettering <lennart@poettering.net>

unit: don't add automatic dependencies on device units if they aren't supported http://lists.freedesktop.org/archives/systemd-devel/2015-April/031187.html

f78f265f405a61387c6c12a879ac0d6b6dc958db 24-Apr-2015 Lennart Poettering <lennart@poettering.net>

core: always coldplug units that are triggered by other units before those Let's make sure that we don't enqueue triggering jobs for units before those units are actually fully loaded. http://lists.freedesktop.org/archives/systemd-devel/2015-April/031176.html https://bugs.freedesktop.org/show_bug.cgi?id=88401

be847e82cf95bf8eb589778df2aa2b3d1d7ae99e 24-Apr-2015 Lennart Poettering <lennart@poettering.net>

Revert "core: do not spawn jobs or touch other units during coldplugging" This reverts commit 6e392c9c45643d106673c6643ac8bf4e65da13c1. We really shouldn't invent external state keeping hashmaps, if we can keep this state in the units themselves.

e911de996a72af7659e4019f03b80f11c476f3f3 21-Apr-2015 Lennart Poettering <lennart@poettering.net>

core: make unit deserialization more defensive

0f908397544811f60f33aab4ab277041c21aa089 16-Apr-2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: fix spurious warning about cpuacct-usage-base deserialization The key was parsed properly, but the warning was still generated.

0b452006de98294d1690f045f6ea2f7f6630ec3b 10-Apr-2015 Ronny Chevalier <chevalier.ronny@gmail.com>

shared: add process-util.[ch]

/systemd/.gitignore /systemd/Makefile.am automount.c cgroup.c execute.c killall.c machine-id-setup.c main.c manager.c service.c shutdown.c unit.c /systemd/src/delta/delta.c /systemd/src/fsck/fsck.c /systemd/src/getty-generator/getty-generator.c /systemd/src/import/export-tar.c /systemd/src/import/import-tar.c /systemd/src/import/importd.c /systemd/src/import/pull-common.c /systemd/src/import/pull-dkr.c /systemd/src/import/pull-tar.c /systemd/src/journal/coredump.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journald-console.c /systemd/src/journal/journald-kmsg.c /systemd/src/journal/journald-server.c /systemd/src/journal/journald-syslog.c /systemd/src/journal/journald-wall.c /systemd/src/libsystemd-network/test-pppoe.c /systemd/src/libsystemd/sd-bus/bus-container.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/login/inhibit.c /systemd/src/login/loginctl.c /systemd/src/login/logind-action.c /systemd/src/login/logind-dbus.c /systemd/src/machine/machine-dbus.c /systemd/src/machine/machinectl.c /systemd/src/nspawn/nspawn.c /systemd/src/quotacheck/quotacheck.c /systemd/src/shared/audit.c /systemd/src/shared/cgroup-show.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/log.c /systemd/src/shared/logs-show.c /systemd/src/shared/machine-pool.c /systemd/src/shared/pager.c /systemd/src/shared/process-util.c /systemd/src/shared/process-util.h /systemd/src/shared/smack-util.c /systemd/src/shared/spawn-ask-password-agent.c /systemd/src/shared/spawn-polkit-agent.c /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/shared/virt.c /systemd/src/systemctl/systemctl.c /systemd/src/test/test-cgroup-util.c /systemd/src/test/test-fileio.c /systemd/src/test/test-namespace.c /systemd/src/test/test-process-util.c /systemd/src/test/test-util.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/vconsole/vconsole-setup.c
6482f6269c87d2249e52e889a63adbdd50f2d691 10-Apr-2015 Ronny Chevalier <chevalier.ronny@gmail.com>

shared: add formats-util.h

/systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/bus-xml-policy.c /systemd/src/bus-proxyd/proxy.c /systemd/src/bus-proxyd/stdio-bridge.c automount.c busname.c dbus-manager.c execute.c killall.c main.c mount.c service.c socket.c swap.c unit-printf.c unit.c /systemd/src/initctl/initctl.c /systemd/src/journal-remote/journal-upload.c /systemd/src/journal/journald-console.c /systemd/src/journal/journald-kmsg.c /systemd/src/journal/journald-server.c /systemd/src/journal/journald-syslog.c /systemd/src/journal/journald-wall.c /systemd/src/journal/journald.c /systemd/src/journal/sd-journal.c /systemd/src/journal/stacktrace.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-dump.c /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/bus-socket.c /systemd/src/libsystemd/sd-bus/test-bus-chat.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-login/test-login.c /systemd/src/libsystemd/sd-rtnl/rtnl-message.c /systemd/src/libudev/libudev-monitor.c /systemd/src/login/inhibit.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-action.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user-dbus.c /systemd/src/login/logind-user.c /systemd/src/login/logind.c /systemd/src/login/pam_systemd.c /systemd/src/machine/machine-dbus.c /systemd/src/machine/machine.c /systemd/src/machine/machined-dbus.c /systemd/src/machine/machined.c /systemd/src/notify/notify.c /systemd/src/nspawn/nspawn.c /systemd/src/run/run.c /systemd/src/shared/ask-password-api.c /systemd/src/shared/cgroup-show.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/clean-ipc.c /systemd/src/shared/formats-util.h /systemd/src/shared/install-printf.c /systemd/src/shared/log.c /systemd/src/shared/logs-show.c /systemd/src/shared/socket-util.c /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/shutdownd/shutdownd.c /systemd/src/systemctl/systemctl.c /systemd/src/sysusers/sysusers.c /systemd/src/test/test-cgroup-util.c /systemd/src/test/test-log.c /systemd/src/test/test-tmpfiles.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/udev/udev-ctrl.c /systemd/src/udev/udev-event.c /systemd/src/udev/udev-node.c /systemd/src/udev/udevadm-monitor.c /systemd/src/udev/udevd.c /systemd/src/update-utmp/update-utmp.c
756c09e672a08efd9e728a5cab50a641b022b84c 10-Apr-2015 Ronny Chevalier <chevalier.ronny@gmail.com>

core: set_put never returns -EEXIST When the value is already there it returns 0. Also add a test to ensure this

15411c0cb1192799b37ec8f25d6f30e8d7292fc6 13-Mar-2015 David Herrmann <dh.herrmann@gmail.com>

tree-wide: there is no ENOTSUP on linux Replace ENOTSUP by EOPNOTSUPP as this is what linux actually uses.

/systemd/man/sd_event_add_time.xml /systemd/src/bus-proxyd/driver.c bus-policy.c job.c load-fragment.c unit-printf.c unit.c /systemd/src/import/import-compress.c /systemd/src/import/qcow2-util.c /systemd/src/journal-remote/journal-remote.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journal-authenticate.c /systemd/src/journal/journal-verify.c /systemd/src/journal/journalctl.c /systemd/src/libsystemd-network/lldp-internal.c /systemd/src/libsystemd/sd-bus/bus-common-errors.c /systemd/src/libsystemd/sd-bus/bus-control.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-error.c /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/bus-message.c /systemd/src/libsystemd/sd-bus/bus-util.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-bus/test-bus-error.c /systemd/src/libsystemd/sd-event/sd-event.c /systemd/src/libsystemd/sd-path/sd-path.c /systemd/src/libsystemd/sd-rtnl/rtnl-message.c /systemd/src/libsystemd/sd-rtnl/rtnl-types.c /systemd/src/libsystemd/sd-rtnl/sd-rtnl.c /systemd/src/login/logind-action.c /systemd/src/login/logind-session.c /systemd/src/machine/machinectl.c /systemd/src/notify/notify.c /systemd/src/nspawn/nspawn.c /systemd/src/path/path.c /systemd/src/resolve/resolved-dns-scope.c /systemd/src/shared/copy.c /systemd/src/shared/fw-util.c /systemd/src/shared/fw-util.h /systemd/src/shared/install.c /systemd/src/shared/machine-image.c /systemd/src/shared/selinux-util.c /systemd/src/shared/smack-util.c /systemd/src/shared/socket-util.c /systemd/src/shared/util.c /systemd/src/systemctl/systemctl.c /systemd/src/timedate/timedated.c /systemd/src/tmpfiles/tmpfiles.c
6e392c9c45643d106673c6643ac8bf4e65da13c1 07-Mar-2015 Ivan Shapovalov <intelfx100@gmail.com>

core: do not spawn jobs or touch other units during coldplugging Because the order of coldplugging is not defined, we can reference a not-yet-coldplugged unit and read its state while it has not yet been set to a meaningful value. This way, already active units may get started again. We fix this by deferring such actions until all units have been at least somehow coldplugged. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=88401

5ad096b3f1331b175340129a8c9a5a9d711e5415 02-Mar-2015 Lennart Poettering <lennart@poettering.net>

core: expose consumed CPU time per unit This adds support for showing the accumulated consumed CPU time per-unit in the "systemctl status" output. The property is also readable via the bus.

628c89cc68ab96fce2de7ebba5933725d147aecc 28-Feb-2015 Lennart Poettering <lennart@poettering.net>

core: rework device state logic This change introduces a new state "tentative" for device units. Device units are considered "plugged" when udev announced them, "dead" when they are not available in the kernel, and "tentative" when they are referenced in /proc/self/mountinfo or /proc/swaps but not (yet) announced via udev. This should fix a race when device nodes (like loop devices) are created and immediately mounted. Previously, systemd might end up seeing the mount unit before the device, and would thus pull down the mount because its BindTo dependency on the device would not be fulfilled.

03455c2879699852b691903343e378c28992ff6a 26-Feb-2015 Lucas De Marchi <lucas.demarchi@intel.com>

core: emit changes for NFailedUnits property By notifying the clients when this property is changed it's possible to allow "system health monitor" tools to get transitions like running<->degraded. This is an alternative to send changes on the SystemState property since the latter is more difficult to derive.

98f738b62047229af4a929d7996e2ab04253b02c 26-Feb-2015 Colin Walters <walters@verbum.org>

unit: When stopping due to BindsTo=, log which unit caused it I'm trying to track down a relatively recent change in systemd which broke OSTree; see https://bugzilla.gnome.org/show_bug.cgi?id=743891 Systemd started to stop sysroot.mount, and this patch should help me debug why at least. While we're here, "break" on the first unit we find that will deactivate, as there's no point in further iteration.

5bd4b173605142c7be493aa4d958ebaef21f421d 25-Feb-2015 Lennart Poettering <lennart@poettering.net>

unit: use weaker dependencies between mount and device units in --user mode When running in user mode unmounting of mount units when a device vanishes is unlikely to work, and even if it would work is already done by PID 1 anyway. HEnce, when creating implicit dependencies between mount units and their backing devices, created a Wants= type dependency in --user mode, but leave a BindsTo= dependency in --system mode.

2eec67acbb00593e414549a7e5b35eb7dd776b1b 23-Feb-2015 Thomas Hindoe Paaboel Andersen <phomes@gmail.com>

remove unused includes This patch removes includes that are not used. The removals were found with include-what-you-use which checks if any of the symbols from a header is in use.

/systemd/src/activate/activate.c /systemd/src/analyze/analyze-verify.c /systemd/src/analyze/analyze.c /systemd/src/ask-password/ask-password.c /systemd/src/binfmt/binfmt.c /systemd/src/boot/bootctl.c /systemd/src/bootchart/bootchart.c /systemd/src/bootchart/bootchart.h /systemd/src/bootchart/store.c /systemd/src/bootchart/svg.c /systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/bus-xml-policy.c /systemd/src/bus-proxyd/bus-xml-policy.h /systemd/src/bus-proxyd/driver.c /systemd/src/bus-proxyd/proxy.c /systemd/src/bus-proxyd/proxy.h /systemd/src/bus-proxyd/stdio-bridge.c /systemd/src/bus-proxyd/synthesize.c /systemd/src/bus-proxyd/test-bus-xml-policy.c /systemd/src/cgls/cgls.c /systemd/src/console/consoled-display.c /systemd/src/console/consoled-manager.c /systemd/src/console/consoled-session.c /systemd/src/console/consoled-terminal.c /systemd/src/console/consoled-workspace.c /systemd/src/console/consoled.c /systemd/src/console/consoled.h automount.c busname.h cgroup.h dbus-automount.c dbus-automount.h dbus-busname.c dbus-busname.h dbus-device.c dbus-device.h dbus-manager.h dbus-mount.c dbus-path.c dbus-path.h dbus-service.c dbus-slice.c dbus-snapshot.c dbus-socket.c dbus-swap.c dbus-target.c dbus-target.h dbus-timer.c dbus-unit.c dbus.c device.c device.h execute.c execute.h failure-action.c hostname-setup.c ima-setup.c job.c job.h kill.c killall.c kmod-setup.c load-dropin.c load-fragment.c locale-setup.c loopback-setup.c machine-id-setup.c main.c manager.c manager.h mount-setup.c mount.c mount.h namespace.c path.c path.h scope.c scope.h selinux-access.c selinux-access.h selinux-setup.c service.c service.h shutdown.c slice.c slice.h smack-setup.c snapshot.h socket.c socket.h swap.c swap.h target.c target.h timer.c timer.h transaction.c umount.c unit-printf.c unit.c unit.h /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/delta/delta.c /systemd/src/detect-virt/detect-virt.c /systemd/src/efi-boot-generator/efi-boot-generator.c /systemd/src/fsck/fsck.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/gudev/gudevclient.c /systemd/src/gudev/gudevdevice.c /systemd/src/hibernate-resume/hibernate-resume.c /systemd/src/hostname/hostnamectl.c /systemd/src/hostname/hostnamed.c /systemd/src/hwdb/hwdb.c /systemd/src/initctl/initctl.c /systemd/src/journal-remote/journal-remote-write.h /systemd/src/journal-remote/journal-remote.c /systemd/src/journal-remote/journal-remote.h /systemd/src/journal/cat.c /systemd/src/journal/catalog.c /systemd/src/journal/compress.c /systemd/src/journal/compress.h /systemd/src/journal/coredump.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/fsprg.c /systemd/src/journal/journal-authenticate.h /systemd/src/journal/journal-file.c /systemd/src/journal/journal-qrcode.h /systemd/src/journal/journal-vacuum.c /systemd/src/journal/journal-vacuum.h /systemd/src/journal/journal-verify.c /systemd/src/journal/journalctl.c /systemd/src/journal/journald-console.c /systemd/src/journal/journald-rate-limit.h /systemd/src/journal/journald-server.c /systemd/src/journal/journald-server.h /systemd/src/journal/journald-stream.c /systemd/src/journal/journald.c /systemd/src/journal/mmap-cache.c /systemd/src/journal/mmap-cache.h /systemd/src/journal/test-catalog.c /systemd/src/journal/test-journal-enum.c /systemd/src/journal/test-journal-interleaving.c /systemd/src/journal/test-journal-verify.c /systemd/src/journal/test-journal.c /systemd/src/journal/test-mmap-cache.c /systemd/src/libsystemd-network/dhcp-identifier.c /systemd/src/libsystemd-network/dhcp-identifier.h /systemd/src/libsystemd-network/dhcp-network.c /systemd/src/libsystemd-network/dhcp-packet.c /systemd/src/libsystemd-network/lldp-network.c /systemd/src/libsystemd-network/network-internal.c /systemd/src/libsystemd-network/network-internal.h /systemd/src/libsystemd-network/sd-dhcp-client.c /systemd/src/libsystemd-network/sd-dhcp-lease.c /systemd/src/libsystemd-network/sd-dhcp-server.c /systemd/src/libsystemd-network/sd-lldp.c /systemd/src/libsystemd-network/sd-pppoe.c /systemd/src/libsystemd-network/test-dhcp-client.c /systemd/src/libsystemd-network/test-dhcp-option.c /systemd/src/libsystemd-network/test-dhcp-server.c /systemd/src/libsystemd-network/test-lldp.c /systemd/src/libsystemd-network/test-pppoe.c /systemd/src/libsystemd-terminal/evcat.c /systemd/src/libsystemd-terminal/grdev-drm.c /systemd/src/libsystemd-terminal/grdev.c /systemd/src/libsystemd-terminal/grdev.h /systemd/src/libsystemd-terminal/idev-evdev.c /systemd/src/libsystemd-terminal/idev-keyboard.c /systemd/src/libsystemd-terminal/idev.c /systemd/src/libsystemd-terminal/idev.h /systemd/src/libsystemd-terminal/modeset.c /systemd/src/libsystemd-terminal/subterm.c /systemd/src/libsystemd-terminal/sysview.c /systemd/src/libsystemd-terminal/sysview.h /systemd/src/libsystemd-terminal/term-charset.c /systemd/src/libsystemd-terminal/term-page.c /systemd/src/libsystemd-terminal/term-wcwidth.c /systemd/src/libsystemd-terminal/test-term-page.c /systemd/src/libsystemd-terminal/test-term-parser.c /systemd/src/libsystemd-terminal/test-unifont.c /systemd/src/libsystemd-terminal/unifont.c /systemd/src/libsystemd-terminal/unifont.h /systemd/src/libsystemd/sd-bus/bus-bloom.h /systemd/src/libsystemd/sd-bus/bus-common-errors.h /systemd/src/libsystemd/sd-bus/bus-container.c /systemd/src/libsystemd/sd-bus/bus-control.c /systemd/src/libsystemd/sd-bus/bus-creds.c /systemd/src/libsystemd/sd-bus/bus-creds.h /systemd/src/libsystemd/sd-bus/bus-dump.c /systemd/src/libsystemd/sd-bus/bus-gvariant.c /systemd/src/libsystemd/sd-bus/bus-internal.h /systemd/src/libsystemd/sd-bus/bus-introspect.c /systemd/src/libsystemd/sd-bus/bus-introspect.h /systemd/src/libsystemd/sd-bus/bus-kernel.c /systemd/src/libsystemd/sd-bus/bus-match.c /systemd/src/libsystemd/sd-bus/bus-message.c /systemd/src/libsystemd/sd-bus/bus-message.h /systemd/src/libsystemd/sd-bus/bus-signature.h /systemd/src/libsystemd/sd-bus/bus-socket.c /systemd/src/libsystemd/sd-bus/bus-track.c /systemd/src/libsystemd/sd-bus/bus-type.c /systemd/src/libsystemd/sd-bus/bus-type.h /systemd/src/libsystemd/sd-bus/bus-util.h /systemd/src/libsystemd/sd-bus/busctl-introspect.h /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-bus/test-bus-chat.c /systemd/src/libsystemd/sd-bus/test-bus-creds.c /systemd/src/libsystemd/sd-bus/test-bus-introspect.c /systemd/src/libsystemd/sd-bus/test-bus-kernel-benchmark.c /systemd/src/libsystemd/sd-bus/test-bus-kernel-bloom.c /systemd/src/libsystemd/sd-bus/test-bus-kernel.c /systemd/src/libsystemd/sd-bus/test-bus-marshal.c /systemd/src/libsystemd/sd-bus/test-bus-match.c /systemd/src/libsystemd/sd-bus/test-bus-objects.c /systemd/src/libsystemd/sd-bus/test-bus-server.c /systemd/src/libsystemd/sd-bus/test-bus-signature.c /systemd/src/libsystemd/sd-bus/test-bus-zero-copy.c /systemd/src/libsystemd/sd-daemon/sd-daemon.c /systemd/src/libsystemd/sd-event/sd-event.c /systemd/src/libsystemd/sd-hwdb/sd-hwdb.c /systemd/src/libsystemd/sd-network/network-util.h /systemd/src/libsystemd/sd-network/sd-network.c /systemd/src/libsystemd/sd-resolve/sd-resolve.c /systemd/src/libsystemd/sd-resolve/test-resolve.c /systemd/src/libsystemd/sd-rtnl/local-addresses.h /systemd/src/libsystemd/sd-rtnl/rtnl-message.c /systemd/src/libsystemd/sd-rtnl/rtnl-types.c /systemd/src/libsystemd/sd-rtnl/rtnl-util.c /systemd/src/libsystemd/sd-rtnl/rtnl-util.h /systemd/src/libsystemd/sd-rtnl/test-rtnl.c /systemd/src/libudev/libudev-device-private.c /systemd/src/libudev/libudev-enumerate.c /systemd/src/libudev/libudev-list.c /systemd/src/libudev/libudev-monitor.c /systemd/src/libudev/libudev-queue.c /systemd/src/libudev/libudev-util.c /systemd/src/libudev/libudev.c /systemd/src/libudev/libudev.h /systemd/src/locale/localectl.c /systemd/src/locale/localed.c /systemd/src/login/inhibit.c /systemd/src/login/loginctl.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-action.c /systemd/src/login/logind-action.h /systemd/src/login/logind-button.c /systemd/src/login/logind-button.h /systemd/src/login/logind-core.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-device.c /systemd/src/login/logind-device.h /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-inhibit.h /systemd/src/login/logind-seat.c /systemd/src/login/logind-seat.h /systemd/src/login/logind-session-device.c /systemd/src/login/logind-session-device.h /systemd/src/login/logind-session.c /systemd/src/login/logind-session.h /systemd/src/login/logind-user.c /systemd/src/login/logind-user.h /systemd/src/login/logind.c /systemd/src/login/logind.h /systemd/src/login/test-inhibit.c /systemd/src/login/user-sessions.c /systemd/src/machine-id-commit/machine-id-commit.c /systemd/src/machine-id-setup/machine-id-setup-main.c /systemd/src/machine/image-dbus.c /systemd/src/machine/machine-dbus.c /systemd/src/machine/machine-dbus.h /systemd/src/machine/machine.c /systemd/src/machine/machine.h /systemd/src/machine/machinectl.c /systemd/src/machine/machined-dbus.c /systemd/src/machine/machined.c /systemd/src/machine/machined.h /systemd/src/modules-load/modules-load.c /systemd/src/network/networkd-address-pool.c /systemd/src/network/networkd-address.c /systemd/src/network/networkd-fdb.c /systemd/src/network/networkd-link.c /systemd/src/network/networkd-manager.c /systemd/src/network/networkd-netdev-bond.c /systemd/src/network/networkd-netdev-bridge.c /systemd/src/network/networkd-netdev-dummy.c /systemd/src/network/networkd-netdev-ipvlan.c /systemd/src/network/networkd-netdev-macvlan.c /systemd/src/network/networkd-netdev-tunnel.c /systemd/src/network/networkd-netdev-veth.c /systemd/src/network/networkd-netdev-vlan.c /systemd/src/network/networkd-netdev-vxlan.c /systemd/src/network/networkd-netdev.c /systemd/src/network/networkd-netdev.h /systemd/src/network/networkd-network-bus.c /systemd/src/network/networkd-network.c /systemd/src/network/networkd-route.c /systemd/src/network/networkd-wait-online-link.c /systemd/src/network/networkd-wait-online-manager.c /systemd/src/network/networkd-wait-online.h /systemd/src/network/networkd.c /systemd/src/network/test-network-tables.c /systemd/src/notify/notify.c /systemd/src/nspawn/nspawn.c /systemd/src/nss-myhostname/nss-myhostname.c /systemd/src/nss-resolve/nss-resolve.c /systemd/src/path/path.c /systemd/src/quotacheck/quotacheck.c /systemd/src/remount-fs/remount-fs.c /systemd/src/reply-password/reply-password.c /systemd/src/resolve-host/resolve-host.c /systemd/src/resolve/resolved-dns-cache.h /systemd/src/resolve/resolved-dns-domain.h /systemd/src/resolve/resolved-dns-packet.h /systemd/src/resolve/resolved-dns-query.c /systemd/src/resolve/resolved-dns-query.h /systemd/src/resolve/resolved-dns-rr.h /systemd/src/resolve/resolved-dns-scope.h /systemd/src/resolve/resolved-dns-server.h /systemd/src/resolve/resolved-dns-stream.h /systemd/src/resolve/resolved-dns-transaction.h /systemd/src/resolve/resolved-link.h /systemd/src/resolve/resolved-manager.c /systemd/src/resolve/resolved-manager.h /systemd/src/resolve/resolved.c /systemd/src/resolve/test-dns-domain.c /systemd/src/shared/acl-util.c /systemd/src/shared/acpi-fpdt.c /systemd/src/shared/apparmor-util.c /systemd/src/shared/arphrd-list.c /systemd/src/shared/ask-password-api.h /systemd/src/shared/audit.c /systemd/src/shared/audit.h /systemd/src/shared/barrier.c /systemd/src/shared/barrier.h /systemd/src/shared/base-filesystem.c /systemd/src/shared/boot-timestamps.c /systemd/src/shared/btrfs-util.c /systemd/src/shared/bus-label.c /systemd/src/shared/cap-list.c /systemd/src/shared/capability.c /systemd/src/shared/capability.h /systemd/src/shared/cgroup-show.h /systemd/src/shared/cgroup-util.c /systemd/src/shared/clean-ipc.c /systemd/src/shared/clock-util.c /systemd/src/shared/clock-util.h /systemd/src/shared/condition.c /systemd/src/shared/conf-files.c /systemd/src/shared/conf-files.h /systemd/src/shared/conf-parser.c /systemd/src/shared/dev-setup.c /systemd/src/shared/device-nodes.c /systemd/src/shared/efivars.c /systemd/src/shared/efivars.h /systemd/src/shared/env-util.c /systemd/src/shared/env-util.h /systemd/src/shared/errno-list.c /systemd/src/shared/exit-status.c /systemd/src/shared/fdset.c /systemd/src/shared/fdset.h /systemd/src/shared/fileio-label.c /systemd/src/shared/generator.c /systemd/src/shared/hashmap.c /systemd/src/shared/install-printf.c /systemd/src/shared/install.c /systemd/src/shared/json.c /systemd/src/shared/json.h /systemd/src/shared/log.h /systemd/src/shared/logs-show.c /systemd/src/shared/logs-show.h /systemd/src/shared/machine-image.c /systemd/src/shared/memfd-util.c /systemd/src/shared/memfd-util.h /systemd/src/shared/mkdir-label.c /systemd/src/shared/mkdir.c /systemd/src/shared/mkdir.h /systemd/src/shared/pager.c /systemd/src/shared/path-lookup.c /systemd/src/shared/path-util.c /systemd/src/shared/pty.c /systemd/src/shared/pty.h /systemd/src/shared/ptyfwd.c /systemd/src/shared/ptyfwd.h /systemd/src/shared/ratelimit.c /systemd/src/shared/ring.c /systemd/src/shared/ring.h /systemd/src/shared/selinux-util.c /systemd/src/shared/selinux-util.h /systemd/src/shared/socket-label.c /systemd/src/shared/socket-util.c /systemd/src/shared/socket-util.h /systemd/src/shared/spawn-ask-password-agent.c /systemd/src/shared/spawn-polkit-agent.c /systemd/src/shared/strbuf.h /systemd/src/shared/strv.c /systemd/src/shared/strxcpyx.h /systemd/src/shared/time-dst.c /systemd/src/shared/unit-name.c /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/shared/utmp-wtmp.c /systemd/src/shutdownd/shutdownd.c /systemd/src/sleep/sleep.c /systemd/src/socket-proxy/socket-proxyd.c /systemd/src/system-update-generator/system-update-generator.c /systemd/src/systemctl/systemctl.c /systemd/src/sysusers/sysusers.c /systemd/src/sysv-generator/sysv-generator.c /systemd/src/test/test-barrier.c /systemd/src/test/test-btrfs.c /systemd/src/test/test-cap-list.c /systemd/src/test/test-capability.c /systemd/src/test/test-cgroup-mask.c /systemd/src/test/test-cgroup-util.c /systemd/src/test/test-cgroup.c /systemd/src/test/test-ellipsize.c /systemd/src/test/test-engine.c /systemd/src/test/test-env-replace.c /systemd/src/test/test-execute.c /systemd/src/test/test-hashmap.c /systemd/src/test/test-hostname.c /systemd/src/test/test-install.c /systemd/src/test/test-job-type.c /systemd/src/test/test-json.c /systemd/src/test/test-libudev.c /systemd/src/test/test-locale-util.c /systemd/src/test/test-loopback.c /systemd/src/test/test-ns.c /systemd/src/test/test-path-lookup.c /systemd/src/test/test-pty.c /systemd/src/test/test-ring.c /systemd/src/test/test-rtnl-manual.c /systemd/src/test/test-set.c /systemd/src/test/test-sleep.c /systemd/src/test/test-strxcpyx.c /systemd/src/test/test-tables.c /systemd/src/test/test-tmpfiles.c /systemd/src/test/test-udev.c /systemd/src/test/test-unit-file.c /systemd/src/test/test-unit-name.c /systemd/src/test/test-watchdog.c /systemd/src/timedate/timedatectl.c /systemd/src/timedate/timedated.c /systemd/src/timesync/timesyncd-conf.c /systemd/src/timesync/timesyncd-manager.c /systemd/src/timesync/timesyncd-manager.h /systemd/src/timesync/timesyncd.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/udev/accelerometer/accelerometer.c /systemd/src/udev/collect/collect.c /systemd/src/udev/net/link-config.c /systemd/src/udev/net/link-config.h /systemd/src/udev/udev-builtin-blkid.c /systemd/src/udev/udev-builtin-btrfs.c /systemd/src/udev/udev-builtin-hwdb.c /systemd/src/udev/udev-builtin-keyboard.c /systemd/src/udev/udev-builtin-kmod.c /systemd/src/udev/udev-builtin-uaccess.c /systemd/src/udev/udev-builtin.c /systemd/src/udev/udev-ctrl.c /systemd/src/udev/udev-event.c /systemd/src/udev/udev-node.c /systemd/src/udev/udev-watch.c /systemd/src/udev/udevadm-control.c /systemd/src/udev/udevadm-hwdb.c /systemd/src/udev/udevadm-info.c /systemd/src/udev/udevadm-monitor.c /systemd/src/udev/udevadm-settle.c /systemd/src/udev/udevadm-test-builtin.c /systemd/src/udev/udevadm-test.c /systemd/src/udev/udevadm-trigger.c /systemd/src/udev/udevadm.c /systemd/src/udev/udevd.c /systemd/src/update-done/update-done.c /systemd/src/update-utmp/update-utmp.c /systemd/src/vconsole/vconsole-setup.c
0a6f50c0afdfc434b492493bd9efab20cbee8623 12-Feb-2015 Thomas Hindoe Paaboel Andersen <phomes@gmail.com>

include <poll.h> instead of <sys/poll.h> include-what-you-use automatically does this and it makes finding unnecessary harder to spot. The only content of poll.h is a include of sys/poll.h so should be harmless.

/systemd/man/sd_journal_get_fd.xml /systemd/src/ask-password/ask-password.c /systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/proxy.c /systemd/src/bus-proxyd/stdio-bridge.c /systemd/src/bus-proxyd/test-bus-xml-policy.c execute.c manager.c unit.c /systemd/src/initctl/initctl.c /systemd/src/journal/sd-journal.c /systemd/src/libsystemd/sd-bus/bus-socket.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libsystemd/sd-login/test-login.c /systemd/src/libsystemd/sd-network/sd-network.c /systemd/src/libsystemd/sd-resolve/sd-resolve.c /systemd/src/libudev/libudev-monitor.c /systemd/src/reply-password/reply-password.c /systemd/src/resolve/resolved-manager.c /systemd/src/shared/ask-password-api.c /systemd/src/shared/logs-show.c /systemd/src/shared/spawn-polkit-agent.c /systemd/src/shared/util.c /systemd/src/shared/utmp-wtmp.c /systemd/src/shutdownd/shutdownd.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/udev/udev-ctrl.c /systemd/src/udev/udev-event.c /systemd/src/udev/udevadm-settle.c /systemd/src/udev/udevadm-test-builtin.c /systemd/src/udev/udevd.c
4c08c8242a687e00b289e948ccd07b96f0bc4866 12-Feb-2015 Lennart Poettering <lennart@poettering.net>

core: don't fail to run services in --user instances if $HOME is missing Otherwise we cannot even invoke systemd-exit.service anymore, thus not even exit. https://bugs.freedesktop.org/show_bug.cgi?id=83100 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=759320

418761f5864fe1ae7e9bb884259cc9933ae8ad0c 11-Feb-2015 Lennart Poettering <lennart@poettering.net>

core: correct a log message The log message talks specifically about services, though it actually applies to any kind of unit.

63c372cb9df3bee01e3bf8cd7f96f336bddda846 03-Feb-2015 Lennart Poettering <lennart@poettering.net>

util: rework strappenda(), and rename it strjoina() After all it is now much more like strjoin() than strappend(). At the same time, add support for NULL sentinels, even if they are normally not necessary.

/systemd/src/cgls/cgls.c busname.c dbus-cgroup.c execute.c machine-id-setup.c manager.c mount.c namespace.c service.c socket.c swap.c unit.c /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/dbus1-generator/dbus1-generator.c /systemd/src/efi-boot-generator/efi-boot-generator.c /systemd/src/firstboot/firstboot.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/getty-generator/getty-generator.c /systemd/src/gpt-auto-generator/gpt-auto-generator.c /systemd/src/import/curl-util.c /systemd/src/import/import-common.c /systemd/src/import/import-dkr.c /systemd/src/import/import-raw.c /systemd/src/journal-remote/journal-remote.c /systemd/src/journal-remote/microhttpd-util.c /systemd/src/journal/coredump.c /systemd/src/journal/journalctl.c /systemd/src/journal/journald-server.c /systemd/src/journal/journald-syslog.c /systemd/src/journal/sd-journal.c /systemd/src/libsystemd-terminal/idev-keyboard.c /systemd/src/libsystemd/sd-bus/bus-control.c /systemd/src/libsystemd/sd-bus/bus-dump.c /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-login/sd-login.c /systemd/src/libudev/libudev-device.c /systemd/src/locale/localed.c /systemd/src/login/logind-button.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-user.c /systemd/src/machine/machine.c /systemd/src/machine/machinectl.c /systemd/src/network/networkd-link.c /systemd/src/nspawn/nspawn.c /systemd/src/resolve/resolved-bus.c /systemd/src/run/run.c /systemd/src/shared/cgroup-show.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/condition.c /systemd/src/shared/conf-files.c /systemd/src/shared/generator.c /systemd/src/shared/install.c /systemd/src/shared/logs-show.c /systemd/src/shared/machine-image.c /systemd/src/shared/pager.c /systemd/src/shared/path-util.c /systemd/src/shared/switch-root.c /systemd/src/shared/time-util.c /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/system-update-generator/system-update-generator.c /systemd/src/systemctl/systemctl.c /systemd/src/sysusers/sysusers.c /systemd/src/test/test-conf-files.c /systemd/src/test/test-copy.c /systemd/src/test/test-namespace.c /systemd/src/test/test-path-lookup.c /systemd/src/test/test-path.c /systemd/src/test/test-tmpfiles.c /systemd/src/test/test-util.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/udev/udev-builtin-net_id.c /systemd/src/udev/udevadm-util.c
5ffa8c818120e35c89becd938d160235c069dd12 01-Feb-2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Add a snprinf wrapper which checks that the buffer was big enough If we scale our buffer to be wide enough for the format string, we should expect that the calculation was correct. char_array_0() invocations are removed, since snprintf nul-terminates the output in any case. A similar wrapper is used for strftime calls, but only in timedatectl.c.

82a2b6bb5e4e5d294f09af778c48974a7857afb6 28-Jan-2015 Lennart Poettering <lennart@poettering.net>

core: output unit status output strings to console, only if we actually are changing unit state Unit _start() and _stop() implementations can fail with -EAGAIN to delay execution temporarily. Thus, we should not output status messages before invoking these calls, but after, and only when we know that the invocation actually made a change.

a354329f724d6ce913d2ccffb2be8f3327a67faa 06-Jan-2015 Lennart Poettering <lennart@poettering.net>

core: add new logic for services to store file descriptors in PID 1 With this change it is possible to send file descriptors to PID 1, via sd_pid_notify_with_fds() which PID 1 will store individually for each service, and pass via the usual fd passing logic on next invocation. This is useful for enable daemon reload schemes where daemons serialize their state to /run, push their fds into PID 1 and terminate, restoring their state on next start from the data in /run and passed in from PID 1. The fds are kept by PID 1 as long as no POLLHUP or POLLERR is seen on them, and the service they belong to are either not dead or failed, or have a job queued.

9c3349e23b14db27e7ba45f82cf647899c563ea9 05-Jan-2015 Lennart Poettering <lennart@poettering.net>

core: rework counting of running jobs Let's unify the code that counts the running jobs a bit, in order to make sure we are less likely to miss one. This is related to this bug: https://bugs.freedesktop.org/show_bug.cgi?id=87349 However, it probably won't fix it fully, and I cannot reproduce the issue. The change also adds an explicit assert change when the counter is off.

f131770b1465fbf423881f16ba85523a05f846fe 31-Dec-2014 Veres Lajos <vlajos@gmail.com>

tree-wide: spelling fixes https://github.com/vlajos/misspell_fixer https://github.com/torstehu/systemd/commit/b6fdeb618cf2f3ce1645b3315f15f482710c7ffa Thanks to Torstein Husebo <torstein@huseboe.net>.

/systemd/NEWS /systemd/TODO /systemd/man/sd_bus_negotiate_fds.xml /systemd/man/sd_event_add_child.xml /systemd/man/systemd-machine-id-commit.service.xml /systemd/man/systemd-nspawn.xml /systemd/man/systemd.link.xml /systemd/man/udev.xml /systemd/src/bus-proxyd/bus-proxyd.c /systemd/src/bus-proxyd/bus-xml-policy.c machine-id-setup.c main.c shutdown.c unit.c /systemd/src/journal/journalctl.c /systemd/src/journal/journald-audit.c /systemd/src/libsystemd-network/sd-dhcp-client.c /systemd/src/libsystemd-network/test-pppoe.c /systemd/src/libsystemd-terminal/grdev-drm.c /systemd/src/libsystemd-terminal/grdev.c /systemd/src/libsystemd-terminal/unifont-def.h /systemd/src/libsystemd-terminal/unifont-glyph-array.bin /systemd/src/libsystemd/sd-rtnl/rtnl-message.c /systemd/src/resolve/resolved-dns-packet.c /systemd/src/shared/hashmap.c /systemd/src/systemd/sd-id128.h /systemd/src/test/test-path.c
1a7f1b385cd9de8a0da934fadc379860f914ef33 16-Dec-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Move dropin listing to shared No functional change. This is in preparation for using this in systemctl in the future.

0faacd470dfbd24f4c6504da6f04213aa05f9d19 15-Dec-2014 Lennart Poettering <lennart@poettering.net>

unit: handle nicely of certain unit types are not supported on specific systems Containers do not really support .device, .automount or .swap units; Systems compiled without support for swap do not support .swap units; Systems without kdbus do not support .busname units. With this change attempts to start a unsupported unit types will result in an immediate "unsupported" job result, which is a lot more descriptive then before. Also, attempts to start device units in containers will now immediately fail instead of causing jobs to be enqueued that never go away.

96aad8d15a324d0e956a4e5653a11a67b209b41a 10-Dec-2014 Lennart Poettering <lennart@poettering.net>

sd-bus: move common errors src/shared/bus-errors.h → src/libsystemd/sd-bus/bus-common-errors.h Stuff in src/shared/ should not use stuff from src/libsystemd/ really.

adb76a701d870b980f7949bcfece2c1547b4976d 09-Dec-2014 WaLyong Cho <walyong.cho@samsung.com>

unit: update unit dropin paths and time when dropin file is written. If a unit is set property by "systemctl set-property", a new dropin file is generated. But the unit's dropin_paths and dropin_mtime are not updated. So the unit is shown as need daemon reload. Update unit dropin_paths and dropin_mtime also when dropin file is written.

b1491eba40715438b0ac874f2be79d5622b971e1 09-Dec-2014 Lennart Poettering <lennart@poettering.net>

core: rename unit_destroy_cgroup() to unit_destroy_cgroup_if_empty() since it's not quite as destructive as it sounds nowadays

d2dc52dbc45051faa6356213a537081084e9dda4 02-Dec-2014 Lennart Poettering <lennart@poettering.net>

systemctl: show unit file preset state in "systemctl status" output"

31938a8560a664c32a9d72f1fc2d4347b232e6e9 28-Nov-2014 Michal Schmidt <mschmidt@redhat.com>

core: convert log_unit_*() to log_unit_*_errno() Using: find . -name '*.[ch]' | xargs sed -r -i -e \ 's/log_unit_(debug|info|notice|warning|error|emergency)\(([^"]+), "(.*)%s"(.*), strerror\(-([a-zA-Z_]+)\)\);/log_unit_\1_errno(\2, \5, "\3%m"\4);/'

e2cc6eca73cd1df8be552d7c23f9ff3d69c06f1e 28-Nov-2014 Lennart Poettering <lennart@poettering.net>

log: fix order of log_unit_struct() to match other logging calls Also, while we are at it, introduce some syntactic sugar for creating ERRNO= and MESSAGE= structured logging fields.

79008bddf679a5e0900369950eb346c9fa687107 27-Nov-2014 Lennart Poettering <lennart@poettering.net>

log: rearrange log function naming - Rename log_meta() → log_internal(), to follow naming scheme of most other log functions that are usually invoked through macros, but never directly. - Rename log_info_object() to log_object_info(), simply because the object should be before any other parameters, to follow OO-style programming style.

/systemd/src/analyze/analyze-verify.c automount.c busname.c device.c execute.c job.c kmod-setup.c main.c manager.c mount.c path.c scope.c selinux-access.c service.c slice.c snapshot.c socket.c swap.c timer.c transaction.c unit.c unit.h /systemd/src/journal-remote/microhttpd-util.c /systemd/src/journal/test-journal-interleaving.c /systemd/src/libsystemd-network/dhcp-internal.h /systemd/src/libsystemd-network/dhcp-server-internal.h /systemd/src/libsystemd-network/dhcp6-internal.h /systemd/src/libsystemd-network/ipv4ll-internal.h /systemd/src/libsystemd-network/sd-icmp6-nd.c /systemd/src/libsystemd-terminal/idev-keyboard.c /systemd/src/modules-load/modules-load.c /systemd/src/network/networkd-address.c /systemd/src/network/networkd-dhcp4.c /systemd/src/network/networkd-ipv4ll.c /systemd/src/network/networkd-link.c /systemd/src/network/networkd-link.h /systemd/src/network/networkd-netdev-bond.c /systemd/src/network/networkd-netdev-macvlan.c /systemd/src/network/networkd-netdev-tunnel.c /systemd/src/network/networkd-netdev-tuntap.c /systemd/src/network/networkd-netdev-veth.c /systemd/src/network/networkd-netdev-vlan.c /systemd/src/network/networkd-netdev-vxlan.c /systemd/src/network/networkd-netdev.c /systemd/src/network/networkd-netdev.h /systemd/src/network/networkd.h /systemd/src/shared/env-util.c /systemd/src/shared/log.c /systemd/src/shared/log.h /systemd/src/sysv-generator/sysv-generator.c /systemd/src/udev/udev-builtin-kmod.c
493657337ad8569e0998a3afa7d6fb357757364a 06-Nov-2014 Lennart Poettering <lennart@poettering.net>

core: get rid of condition.c and move the remaining call into util.c That way only one file with condition code remaining, in src/shared/, rather than src/core/. Next step: dropping the "-util" suffix from condition-util.[ch].

59fccdc587bc179c1638916ee16a24099f94f81f 06-Nov-2014 Lennart Poettering <lennart@poettering.net>

core: introduce the concept of AssertXYZ= similar to ConditionXYZ=, but fatal for a start job if not met

7358dc029ab8cb8f9d83eb847389d84f822ccfe8 31-Oct-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Convert the rest to sd_bus_errnomap I tried to preserve most errno values, but in some cases they were inconsistent (different errno values for the same error name) or just mismatched.

db2cb23b5b179707000d28a11efb3d888d06ee80 28-Oct-2014 Umut Tezduyar Lindskog <umut.tezduyar@axis.com>

core: send sigabrt on watchdog timeout to get the stacktrace if sigabrt doesn't do the job, follow regular shutdown routine, sigterm > sigkill.

127d5fd1563a74411aaceeadd251f98fd52216d7 28-Oct-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

manager: convert ephemeral to enum In preparation for subsequent changes.

f189ab18de69d3dee81117d7925fb370cd038f0f 28-Oct-2014 Lennart Poettering <lennart@poettering.net>

job: optionally, when a job timeout is hit, also execute a failure action

7c0b05e58ba6a74317a332c475196c656b321829 23-Oct-2014 Michal Schmidt <mschmidt@redhat.com>

unit: adjust for the possibility of set_move() failing

09a65f92994445d8fecca34e71b423a8be1769bf 23-Oct-2014 Michal Schmidt <mschmidt@redhat.com>

unit: place reservations before merging other's dependencies With the hashmap implementation that uses chaining the reservations merely ensure that the merging won't result in long bucket chains. With a future alternative implementation it will additionally reserve memory to make sure the merging won't fail.

cb87a73b45503eaa6bead291423a529b00d27156 08-Oct-2014 Lukas Nykryn <lnykryn@redhat.com>

unit: move UnitDependency to unit-name

4d5dec2389d8e6ce78b45d3058220888f4a93db7 02-Oct-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Rename user_runtime to user_runtime_dir This makes this function name similar to user_config_home() and makes it match the name of the environment variable.

718880ba0d557a045e2f969e141cbd59e78c76f4 02-Oct-2014 Steven Allen <steven@stebalien.com>

add a transient user unit directory This patch adds a transient user unit directory under `$XDG_RUNTIME_DIR/systemd/user/` and stores transient user-instance units (such as those created by `systemd-run --user`) under there instead of putting them in $XDG_CONFIG_HOME/systemd/user/. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=67331

d5099efc47d4e6ac60816b5381a5f607ab03f06e 15-Sep-2014 Michal Schmidt <mschmidt@redhat.com>

hashmap: introduce hash_ops to make struct Hashmap smaller It is redundant to store 'hash' and 'compare' function pointers in struct Hashmap separately. The functions always comprise a pair. Store a single pointer to struct hash_ops instead. systemd keeps hundreds of hashmaps, so this saves a little bit of memory.

/systemd/src/analyze/analyze.c /systemd/src/bus-proxyd/bus-policy.c /systemd/src/cgtop/cgtop.c automount.c bus-endpoint.c dbus-manager.c dbus.c device.c killall.c load-fragment.c manager.c mount-setup.c swap.c transaction.c unit.c /systemd/src/delta/delta.c /systemd/src/journal-remote/journal-remote.c /systemd/src/journal/catalog.c /systemd/src/journal/catalog.h /systemd/src/journal/coredump-vacuum.c /systemd/src/journal/coredumpctl.c /systemd/src/journal/journal-file.c /systemd/src/journal/journalctl.c /systemd/src/journal/journald-server.c /systemd/src/journal/mmap-cache.c /systemd/src/journal/sd-journal.c /systemd/src/journal/test-catalog.c /systemd/src/libsystemd-network/sd-dhcp-server.c /systemd/src/libsystemd/sd-bus/bus-match.c /systemd/src/libsystemd/sd-bus/bus-objects.c /systemd/src/libsystemd/sd-bus/bus-track.c /systemd/src/libsystemd/sd-bus/bus-util.c /systemd/src/libsystemd/sd-bus/busctl.c /systemd/src/libsystemd/sd-bus/sd-bus.c /systemd/src/libsystemd/sd-event/sd-event.c /systemd/src/libsystemd/sd-rtnl/sd-rtnl.c /systemd/src/locale/localectl.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-session.c /systemd/src/login/logind.c /systemd/src/machine/machined.c /systemd/src/network/networkd-link.c /systemd/src/network/networkd-manager.c /systemd/src/network/networkd-network.c /systemd/src/network/networkd-wait-online-link.c /systemd/src/readahead/readahead-collect.c /systemd/src/remount-fs/remount-fs.c /systemd/src/resolve/resolved-dns-cache.c /systemd/src/resolve/resolved-dns-domain.c /systemd/src/resolve/resolved-dns-domain.h /systemd/src/resolve/resolved-dns-packet.c /systemd/src/resolve/resolved-dns-query.c /systemd/src/resolve/resolved-dns-rr.c /systemd/src/resolve/resolved-dns-rr.h /systemd/src/resolve/resolved-dns-scope.c /systemd/src/resolve/resolved-dns-server.c /systemd/src/resolve/resolved-dns-server.h /systemd/src/resolve/resolved-dns-transaction.c /systemd/src/resolve/resolved-dns-zone.c /systemd/src/resolve/resolved-link.c /systemd/src/resolve/resolved-manager.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/conf-files.c /systemd/src/shared/fdset.c /systemd/src/shared/hashmap.c /systemd/src/shared/hashmap.h /systemd/src/shared/install.c /systemd/src/shared/locale-util.c /systemd/src/shared/logs-show.c /systemd/src/shared/set.c /systemd/src/shared/set.h /systemd/src/shared/util.c /systemd/src/socket-proxy/socket-proxyd.c /systemd/src/sysctl/sysctl.c /systemd/src/systemctl/systemctl.c /systemd/src/sysusers/sysusers.c /systemd/src/sysv-generator/sysv-generator.c /systemd/src/test/test-hashmap.c /systemd/src/test/test-install.c /systemd/src/test/test-prioq.c /systemd/src/test/test-unit-file.c /systemd/src/tmpfiles/tmpfiles.c
06b643e7f5a3b79005dd57497897ab7255fe3659 30-Aug-2014 Ruben Kerkhof <ruben@rubenkerkhof.com>

Fix a few more typos

4c94096027f21d4ed0efe991534a926d39d52369 21-Aug-2014 Lennart Poettering <lennart@poettering.net>

core: unify how we generate the prefix string when dumping unit state

3f3cc397043e69c9e9a690194a6a1043bf6466c5 18-Aug-2014 Lennart Poettering <lennart@poettering.net>

core: minor modernizations

ff50244582bf69e8489bba6ce59a21663d7f8274 18-Aug-2014 Lennart Poettering <lennart@poettering.net>

units: fix BindsTo= logic when applied relative to services with Type=oneshot Start jobs for Type=oneshot units are successful when the unit state transition activating → inactive took place. In such a case all units that BindsTo= on it previously would continue to run, even though the unit they dependet on was actually already gone.

d1fab3fe88ae873b26b50359758776ad9e31968e 08-Aug-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: warn when merged units have conflicting dependencies A unit should not Conflict with itself. It also does not make much sense for a unit to be After or Before itself, or to trigger itself in some way. If one of those dependency types is encountered, warn, instead of dropping it silently like other dependency types. % build/systemd-analyze verify test/loopy3.service ... Dependency Conflicts dropped when merging unit loopy4.service into loopy3.service Dependency ConflictedBy dropped when merging unit loopy4.service into loopy3.service

e66047ff62c971eefa32b42373420d61e3f2a9c1 08-Aug-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: do not add dependencies to self Adds a pair of files which cause a segfault (also with systemd-analyze verify). https://bugzilla.redhat.com/show_bug.cgi?id=1124843

cf7d80a5fe549d4db11800015e02220dccec3096 21-Jul-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

path-lookup: make SYSTEMD_UNIT_PATH more flexible It can now contain more than one directory, and can be used to only prepend, not totally override, the normal load path.

8eea868708923a092ee85d6146ba4c04b7baea06 01-Jul-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

cryptsetup: allow x-systemd.device-timeout https://bugs.freedesktop.org/show_bug.cgi?id=54210

2968644080fd103062f070e83edd620e0a58c44d 01-Jul-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Move x-systemd-device.timeout handling from core to fstab-generator Instead of adjusting job timeouts in the core, let fstab-generator write out a dropin snippet with the appropriate JobTimeout. x-systemd-device.timeout option is removed from Options= line in the generated unit. The functions to write dropins are moved from core/unit.c to shared/dropin.c, to make them available outside of core. generator.c is moved to libsystemd-label, because it now uses functions defined in dropin.c, which are in libsystemd-label.

865cc19a34cd9a3ff98a7b3754747f4904f56faa 25-May-2014 Jonathan Boulle <jonathanboulle@gmail.com>

Fix several small typos

9a0549093332880df47c4218209ce126b8586835 22-May-2014 Lennart Poettering <lennart@poettering.net>

cgroups: simplify CPUQuota= logic Only accept cpu quota values in percentages, get rid of period definition. It's not clear whether the CFS period controllable per-cgroup even has a future in the kernel, hence let's simplify all this, hardcode the period to 100ms and only accept percentage based quota values.

db785129c9bce9294a118484cbc9bb6935ca34c2 22-May-2014 Lennart Poettering <lennart@poettering.net>

cgroup: rework startup logic Introduce a (unsigned long) -1 as "unset" state for cpu shares/block io weights, and keep the startup unit set around all the time.

95ae05c0e79868c22b3e8e6fbc53432786876730 22-May-2014 WaLyong Cho <walyong.cho@samsung.com>

core: add startup resource control option Similar to CPUShares= and BlockIOWeight= respectively. However only assign the specified weight during startup. Each control group attribute is re-assigned as weight by CPUShares=weight and BlockIOWeight=weight after startup. If not CPUShares= or BlockIOWeight= be specified, then the attribute is re-assigned to each default attribute value. (default cpu.shares=1024, blkio.weight=1000) If only CPUShares=weight or BlockIOWeight=weight be specified, then that implies StartupCPUShares=weight and StartupBlockIOWeight=weight.

9bdb98c59451ed090f8d35d470a54710f389ce71 16-May-2014 Lennart Poettering <lennart@poettering.net>

core: make sure to serialize jobs for all units Previously we wouldn't serialize jobs for units that themselves have nothing to serialize. http://lists.freedesktop.org/archives/systemd-devel/2014-May/019051.html

4e595329a93ed190795c2e24bf132d5028ec6a72 15-May-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Make sure that keys are properly removed from hashmap This is a speculative fix for https://bugzilla.redhat.com/show_bug.cgi?id=1088865. Even though I cannot find a code path that where this would be an issue, for consistency, if we assume that cgroup_path might have been set before we got to unit_deserialize, we should make sure that the unit is removed from the hashmap before we free the key. This seems to be the only place where the key could be prematurely freed, leading to hashmap corruption.

b2f8b02ec27dfec9cbd23573f47aba494f2e9b5f 25-Apr-2014 Lennart Poettering <lennart@poettering.net>

core: expose CFS CPU time quota as high-level unit properties

598459cebac7cc93089769a992e7b03287f77e12 19-Mar-2014 Lennart Poettering <lennart@poettering.net>

core: rework context initialization/destruction logic Let's automatically initialize the kill, exec and cgroup contexts of the various unit types when the object is constructed, instead of invididually in type-specific code. Also, when PrivateDevices= is set, set DevicePolicy= to closed.

b46a529c7c2d8e1db000ff00ddf42fc9f86d54e1 19-Mar-2014 Lennart Poettering <lennart@poettering.net>

core: when PrivateTmp= is set for a unit, make sure to order it after /tmp and /var/tmp are mounted

f1660f96f59dad860d39f148c3a747050d112763 18-Mar-2014 Lennart Poettering <lennart@poettering.net>

core: drop CAP_MKNOD when PrivateDevices= is set

6f285378aa6e4b5b23c939d1fea16f9ab0a57efb 17-Mar-2014 Miklos Vajna <vmiklos@vmiklos.hu>

core, libsystemd, systemd, timedate, udev: spelling fixes

f755e3b74b94296a534033dd6ae04d9506434210 12-Mar-2014 Lennart Poettering <lennart@poettering.net>

core: introduce system state enum The system state knows the states starting → running/degraded/maintenance → stopping, where: starting = system startup running = normal operation degraded = at least one unit is currently in failed state maintenance = rescue/emergency mode is active or queued stopping = system shutdown

2c5859afecee81e345fc9526b1083bf79990ffb8 07-Mar-2014 Daniel Mack <zonque@gmail.com>

Make tables for DEFINE_STRING_TABLE_LOOKUP consistent Bring some arrays that are used for DEFINE_STRING_TABLE_LOOKUP() in the same order than the enums they reference. Also, pass the corresponding _MAX value to the array initalizer where appropriate.

bd44e61b0480712ec5585ff7b0295362a5f9dd36 06-Mar-2014 Lennart Poettering <lennart@poettering.net>

core: correctly unregister PIDs from PID hashtables

517d56b1d0f67dcf76710bc1e17b05518b8cabe6 05-Mar-2014 Lennart Poettering <lennart@poettering.net>

missing: if RLIMIT_RTTIME is not defined by the libc, then we need a new define for the max number of rlimits, too

6e18964d3a365567954fe10ddcfad74babdc427c 04-Mar-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Introduce strv_consume which takes ownership This mirrors set_consume and makes the common use a bit nicer.

8f8f05a919355095518911135c3d630f4620a9b0 03-Mar-2014 Lennart Poettering <lennart@poettering.net>

bus: add sd_bus_track object for tracking peers, and port core over to it This is primarily useful for services that need to track clients which reference certain objects they maintain, or which explicitly want to subscribe to certain events. Something like this is done in a large number of services, and not trivial to do. Hence, let's unify this at one place. This also ports over PID 1 to use this to ensure that subscriptions to job and manager events are correctly tracked. As a side-effect this makes sure we properly serialize and restore the track list across daemon reexec/reload, which didn't work correctly before. This also simplifies how we distribute messages to broadcast to the direct busses: we only track subscriptions for the API bus and implicitly assume that all direct busses are subscribed. This should be a pretty OK simplification since clients connected via direct bus connections are shortlived anyway.

f513e420c8b1a1d4c13092cd378f048b69793497 26-Feb-2014 Lennart Poettering <lennart@poettering.net>

exec: imply NoNewPriviliges= only when seccomp filters are used in user mode

085afe36cb823e7d5b8c5f3ef21ebb9639bac78b 24-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: add global settings for enabling CPUAccounting=, MemoryAccounting=, BlockIOAccounting= for all units at once

c35fa384d00dc5dc7d9f339113b015a3f8a5cf79 24-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: gc half-created stub units

bcfce235a3d757f0ec3b0c01e8583382db1adfe2 20-Feb-2014 Lennart Poettering <lennart@poettering.net>

macro: introduce a nice macro for disabling -Wformat-nonliteral temporarily

db57f3c6d11864f4227bb6734a0d509695a32a7d 20-Feb-2014 Daniel Mack <zonque@gmail.com>

core/unit: fix unit_add_target_dependencies() for units with no dependencies For units without any dependencies, r needs to be initialized to 0. Otherwise, the return value of unit_add_target_dependencies() is unspecified.

9f5650aecb22a1d864b2c0b749910556795f1490 18-Feb-2014 Lennart Poettering <lennart@poettering.net>

util: generalize code that checks whether PIDs are alive or unwaited for

6d2357247b198314d972932415d65a42f83a9b6e 17-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: fix property changes in transient units

e954c9cfa687065244adebaa15314082ba6d7ec2 17-Feb-2014 Lennart Poettering <lennart@poettering.net>

unit: slice dependencies should not be subject to DefaultDependencies

bc432dc7eb62c5671f2b741a86a66393adb350dc 17-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: rework cgroup mask propagation Previously a cgroup setting down tree would result in cgroup membership additions being propagated up the tree and to the siblings, however a unit could never lose cgroup memberships again. With this change we'll make sure that both cgroup additions and removals propagate properly.

b33918c210a9b7a651e4e91cf7429967f1df6c25 13-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: make StopWhenUnneeded work in conjunction with units that fail during their start job https://bugzilla.redhat.com/show_bug.cgi?id=997031

743970d2ea6d08aa7c7bff8220f6b7702f2b1db7 07-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: one step back again, for nspawn we actually can't wait for cgroups running empty since systemd will get exactly zero notifications about it

5ba6985b6c8ef85a8bcfeb1b65239c863436e75b 07-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: allow PIDs to be watched by two units at the same time In some cases it is interesting to map a PID to two units at the same time. For example, when a user logs in via a getty, which is reexeced to /sbin/login that binary will be explicitly referenced as main pid of the getty service, as well as implicitly referenced as part of the session scope.

8190da36f71a887945297cd65d6426c78b466a50 07-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: don't send duplicate SIGCONT when killing units

a911bb9ab27ac0eb3bbf4e8b4109e5da9b88eee3 07-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: watch SIGCHLD more closely to track processes of units with no reliable cgroup empty notifier When a process dies that we can associate with a specific unit, start watching all other processes of that unit, so that we can associate those processes with the unit too. Also, for service units start doing this as soon as we get the first SIGCHLD for either control or main process, so that we can follow the processes of the service from one to the other, as long as process that remain are processes of the ones we watched that died and got reassigned to us as parent. Similar, for scope units start doing this as soon as the scope controller abandons the unit, and thus management entirely reverts to systemd. To abandon a unit introduce a new Abandon() scope unit method call.

97e0691f85da6e7ea131ce80bd61e2d47a737a61 06-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: only send SIGHUP when doing first kill, not when doing final sigkill

1baccdda2e954214e0c5463d6ed8f06009b33c41 05-Feb-2014 Lennart Poettering <lennart@poettering.net>

core: don't wait for non-control/non-main processes when killing processes on the host either Since the current kernel cgroup notification logic is easily confused by existing subgroups, let's do the same thing as in containers before. and just not wait for non-control and non-main processes. This should be corrected as soon as we have sane cgroup notifications from the kernel.

bc6aed7b8b17901ef46c3af9513ae63372b7b413 29-Jan-2014 Lennart Poettering <lennart@poettering.net>

core: in containers, don't wait for cgroup empty notifications which will never come

6294b8a92db8579210d4fc9ce74097a15005b3e6 29-Jan-2014 Lennart Poettering <lennart@poettering.net>

core: use a bit more PID_FMT

58ea275a68cd242ad60161bcb7582614d1d89f13 29-Jan-2014 Lennart Poettering <lennart@poettering.net>

core: introduce new KillMode=mixed which sends SIGTERM only to the main process, but SIGKILL to all daemon processes This should fix some race with terminating systemd --user, where the system systemd instance might race against the user systemd instance when sending SIGTERM.

36be24c8f82141fda995841d177e9e4113e1ef06 27-Jan-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: require mounts for the root and working directories We know that launching a unit will fail if some required directories haven't been mounted yet. There's no point in starting it just to have it fail even before it gets a chance to run.

70b64bd3561c2bbe6cad2e590d4e3e25426f75b5 27-Jan-2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: simplify check for path absoluteness Just a microopt.

f78e6385dc4cee0a1f399c4c89ebf823c108d447 26-Dec-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Use enums to make it obvious what boolean params mean Suggested-by: Russ Allbery <rra@debian.org>

9091e686f43184065381aa71929e3df36a4ea2e1 14-Dec-2013 Thomas Hindoe Paaboel Andersen <phomes@gmail.com>

Add more _printf_'s for format-nonliterals Clang is a bit more strict wrt format-nonliterals: http://clang.llvm.org/docs/LanguageExtensions.html#format-string-checking Adding these extra printf attributes also makes gcc able to find more problems. E.g. this patch uncovers a format issue in udev-builtin-path_id.c Some parts looked intetional about breaking the format-nonliteral check. I added some supression for warnings there.

2b6bf07dd23bb467099d213c97b3875c5e453491 07-Dec-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Get rid of our reimplementation of basename The only problem is that libgen.h #defines basename to point to it's own broken implementation instead of the GNU one. This can be fixed by #undefining basename.

6a371e23ee0e47827fb4e3aa469ed84da2599304 03-Dec-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

systemd: treat reload failure as failure systemctl reload "suceeded" on stopped units, but it is documented to fail in this case. https://bugzilla.redhat.com/show_bug.cgi?id=1036845

e821075a23fdfa3ca7738fc30bb2d4c430fe10c0 02-Dec-2013 Lennart Poettering <lennart@poettering.net>

bus: add .busname unit type to implement kdbus-style bus activation

28b99ccdcb43937123b170509558af6296a0d271 28-Nov-2013 Kay Sievers <kay@vrfy.org>

core: initialize variable

613b411c947635136637f8cdd66b94512f761eab 27-Nov-2013 Lennart Poettering <lennart@poettering.net>

service: add the ability for units to join other unit's PrivateNetwork= and PrivateTmp= namespaces

d420282b28f50720e233ccb1c02547c562195653 26-Nov-2013 Lennart Poettering <lennart@poettering.net>

core: replace OnFailureIsolate= setting by a more generic OnFailureJobMode= setting and make use of it where applicable

eeaedb7c26375352c32ec290cd716f2ff2dbe61a 25-Nov-2013 Lennart Poettering <lennart@poettering.net>

core: include following set data in dump

6414b7c981378a6eef480f6806d7cbfc98ca22a1 22-Nov-2013 David Strauss <david@davidstrauss.net>

cgroups: Cache controller masks and optimize queues.

718db96199eb307751264e4163555662c9a389fa 20-Nov-2013 Lennart Poettering <lennart@poettering.net>

core: convert PID 1 to libsystemd-bus This patch converts PID 1 to libsystemd-bus and thus drops the dependency on libdbus. The only remaining code using libdbus is a test case that validates our bus marshalling against libdbus' marshalling, and this dependency can be turned off. This patch also adds a couple of things to libsystem-bus, that are necessary to make the port work: - Synthesizing of "Disconnected" messages when bus connections are severed. - Support for attaching multiple vtables for the same interface on the same path. This patch also fixes the SetDefaultTarget() and GetDefaultTarget() bus calls which used an inappropriate signature. As a side effect we will now generate PropertiesChanged messages which carry property contents, rather than just invalidation information.

/systemd/Makefile.am /systemd/TODO automount.c automount.h dbus-automount.c dbus-automount.h dbus-cgroup.c dbus-cgroup.h dbus-client-track.c dbus-client-track.h dbus-device.c dbus-device.h dbus-execute.c dbus-execute.h dbus-job.c dbus-job.h dbus-kill.c dbus-kill.h dbus-manager.c dbus-manager.h dbus-mount.c dbus-mount.h dbus-path.c dbus-path.h dbus-scope.c dbus-scope.h dbus-service.c dbus-service.h dbus-slice.c dbus-slice.h dbus-snapshot.c dbus-snapshot.h dbus-socket.c dbus-socket.h dbus-swap.c dbus-swap.h dbus-target.c dbus-target.h dbus-timer.c dbus-timer.h dbus-unit.c dbus-unit.h dbus.c dbus.h device.c device.h job.c job.h load-fragment-gperf.gperf.m4 load-fragment.c main.c manager.c manager.h mount.c mount.h path.c path.h scope.c scope.h selinux-access.c selinux-access.h service.c service.h slice.c snapshot.c snapshot.h socket.c socket.h swap.c swap.h target.c timer.c timer.h transaction.c transaction.h unit.c unit.h /systemd/src/libsystemd-bus/bus-error.h /systemd/src/libsystemd-bus/bus-internal.h /systemd/src/libsystemd-bus/bus-introspect.c /systemd/src/libsystemd-bus/bus-introspect.h /systemd/src/libsystemd-bus/bus-message.c /systemd/src/libsystemd-bus/bus-objects.c /systemd/src/libsystemd-bus/bus-signature.c /systemd/src/libsystemd-bus/bus-util.c /systemd/src/libsystemd-bus/bus-util.h /systemd/src/libsystemd-bus/sd-bus.c /systemd/src/libsystemd-bus/sd-event.c /systemd/src/libsystemd-bus/test-bus-introspect.c /systemd/src/libsystemd-bus/test-bus-marshal.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-seat-dbus.c /systemd/src/login/logind-session-dbus.c /systemd/src/login/logind-session.c /systemd/src/login/logind.c /systemd/src/machine/machined-dbus.c /systemd/src/shared/bus-errors.h /systemd/src/shared/dbus-common.c /systemd/src/shared/dbus-common.h /systemd/src/shared/install.c /systemd/src/shared/install.h /systemd/src/shared/prioq.c /systemd/src/systemctl/systemctl.c /systemd/src/systemd/sd-bus.h /systemd/src/systemd/sd-event.h
9cd861842ccb07372fbd665f2e6c054daaedacb4 16-Nov-2013 Olivier Brunel <jjk@jjacky.com>

Fix RemainAfterExit services keeping a hold on console When a service exits succesfully and has RemainAfterExit set, its hold on the console (in m->n_on_console) wasn't released since the unit state didn't change.

e48614c4b268d9e7ecbd478d1d2410f9e92095e0 16-Nov-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: some more _cleanup_free_

2f38577f3040eedebfe1ace05d5b5a779a588af1 14-Nov-2013 Olivier Brunel <jjk@jjacky.com>

Only disable output on console during boot if needed If there are no more jobs on console, no need/we shouldn't disable output.

9588bc32096fc8342bfd8b989689717186d7d86e 08-Nov-2013 Lennart Poettering <lennart@poettering.net>

Remove dead code and unexport some calls "make check-api-unused" informs us about code that is not used anymore or that is exported but only used internally. Fix these all over the place.

71fda00f320379f5cbee8e118848de98caaa229d 14-Oct-2013 Lennart Poettering <lennart@poettering.net>

list: make our list macros a bit easier to use by not requring type spec on each invocation We can determine the list entry type via the typeof() gcc construct, and so we should to make the macros much shorter to use.

/systemd/TODO /systemd/src/bootchart/bootchart.c /systemd/src/bootchart/svg.c cgroup.c dbus-cgroup.c dbus-job.c dbus-unit.c dbus.c device.c execute.c job.c load-fragment.c manager.c path.c socket.c swap.c timer.c transaction.c umount.c unit.c /systemd/src/initctl/initctl.c /systemd/src/journal/journald-rate-limit.c /systemd/src/journal/journald-stream.c /systemd/src/journal/mmap-cache.c /systemd/src/journal/sd-journal.c /systemd/src/libsystemd-bus/bus-objects.c /systemd/src/libsystemd-bus/sd-bus.c /systemd/src/login/logind-device.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-session-device.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user.c /systemd/src/login/logind.c /systemd/src/machine/machine.c /systemd/src/machine/machined.c /systemd/src/shared/list.h /systemd/src/systemctl/systemctl.c /systemd/src/test/test-list.c
6891529fe1176c046ece579807ff48e3191692f3 13-Oct-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

drop-ins: check return value If the function failed, nothing serious would happen because unlink would probably return EFAULT, but this would obscure the real error and is a bit sloppy.

a57f7e2c828b852eb32fd810dcea041bb2975501 26-Sep-2013 Lennart Poettering <lennart@poettering.net>

core: rework how we match mount units against each other Previously to automatically create dependencies between mount units we matched every mount unit agains all others resulting in O(n^2) complexity. On setups with large amounts of mount units this might make things slow. This change replaces the matching code to use a hashtable that is keyed by a path prefix, and points to a set of units that require that path to be around. When a new mount unit is installed it is hence sufficient to simply look up this set of units via its own file system paths to know which units to order after itself. This patch also changes all unit types to only create automatic mount dependencies via the RequiresMountsFor= logic, and this is exposed to the outside to make things more transparent. With this change we still have some O(n) complexities in place when handling mounts, but that's currently unavoidable due to kernel APIs, and still substantially better than O(n^2) as before. https://bugs.freedesktop.org/show_bug.cgi?id=69740

b58b8e11c5f769e3c80d5169fdcc4bd04b882b7d 28-Aug-2013 Harald Hoyer <harald@redhat.com>

Do not realloc strings, which are already in the hashmap as keys This prevents corruption of the hashmap, because we would free() the keys in the hashmap, if the unit is already in there, with the same cgroup path.

68eda4bd168306f51c90e5d22824c494d709289e 08-Aug-2013 Ronny Chevalier <rchevalier@aldebaran-robotics.com>

dbus: use _cleanup_free_ instead of freeing ourself

82659fd7571bda0f3dce9755b89a23c411d53dda 30-Jul-2013 Lennart Poettering <lennart@poettering.net>

core: optionally send SIGHUP in addition to the configured kill signal This is useful to fake session ends for processes like shells.

52990c2e0eabd1c11280f553f858062d4165b92f 18-Jul-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

systemd,systemctl: export condition status and show failing condition $ systemctl --user status hoohoo hoohoo.service Loaded: loaded (/home/zbyszek/.config/systemd/user/hoohoo.service; static) Active: inactive (dead) start condition failed at Tue 2013-06-25 18:08:42 EDT; 1s ago ConditionPathExists=/tmp/hoo was not met Full information is exported over D-Bus: [(condition, trigger, negate, param, state),...] where state is one of "failed" (<0), "untested" (0), "OK" (>0). I've decided to use 0 for "untested", because it might be useful to differentiate different types of failure later on, without breaking compatibility. systemctl shows the failing condition, if there was a non-trigger failing condition, or says "none of the trigger conditions were met", because there're often many trigger conditions, and they must all fail for the condition to fail, so printing them all would consume a lot of space, and bring unnecessary attention to something that is quite low-level.

4b744dfabebd10bf0f13b64060f44b1bd6c82704 18-Jul-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

systemd: log failed conditions ConditionPathExists=/tmp/nosuchpath failed for nosuchpath.service.

31a7eb86f18b0466681d6fbe80c148f96c551c80 16-Jul-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

systemd: do not output status messages once gettys are running Make Type=idle communication bidirectional: when bootup is finished, the manager, as before, signals idling Type=idle jobs to continue. However, if the boot takes too long, idling jobs signal the manager that they have had enough, wait a tiny bit more, and continue, taking ownership of the console. The manager, when signalled that Type=idle jobs are done, makes a note and will not write to the console anymore. This is a cosmetic issue, but quite noticable, so let's just fix it. Based on Harald Hoyer's patch. https://bugs.freedesktop.org/show_bug.cgi?id=54247 http://unix.stackexchange.com/questions/51805/systemd-messages-after-starting-login/

f440e1bb8a0b1262c7649da502d0e9358019b968 12-Jul-2013 Lukas Nykryn <lnykryn@redhat.com>

unit: check correct variable after strdup

b9ec9359369f224bfb13db616f97401a6a177bd8 11-Jul-2013 Lennart Poettering <lennart@poettering.net>

core: simplify drop-in writing logic a bit let's make use of some format string magic!

d7bd3de0654669e65b9642c248c5fa6d1d9a9f61 11-Jul-2013 Lennart Poettering <lennart@poettering.net>

cgroup: simplify how instantiated units are mapped to cgroups Previously for an instantiated unit foo@bar.service we created a cgroup foo@.service/foo@bar.service, in order to place all instances of the same template inside the same subtree. As we now implicitly add all instantiated units into one per-template slice we don't need this complexity anymore, and instance units can map directly to the cgroups of their full name.

a8833944647bfd10e43569646be954db5cbac54e 11-Jul-2013 Lennart Poettering <lennart@poettering.net>

core: implicitly create a per-template slice for all instantiated units by default If no explicit slice is configured for an instantiated unit, create an implicit one for all instances of the same template.

72673e866a83e6aafdbb599eb3eff2617b7dc79d 10-Jul-2013 Lennart Poettering <lennart@poettering.net>

unit: when deserializing cgroup path add it back into cgroup hashmap Also, properly remove cgroup path from hashmap when freeing unit.

6fa4853328e3d78d092172fa54effb7e785d0a85 10-Jul-2013 Lennart Poettering <lennart@poettering.net>

core: serialize/deserialize bus subscribers

cf1265e188e876dda906dca0029248a06dc80c33 02-Jul-2013 Lennart Poettering <lennart@poettering.net>

core: make GC more aggressive Since we should allow registering/unregistering transient units with the same name in a tight-loop, we need to make the GC more aggressive, so that dead units are cleaned up immediately instead of later. hence, execute the GC sweep on every event loop iteration and clean up units. This of course, means we need to be careful with adding units to the GC queue, which we already are since we execute check_gc() of each unit type already when adding something to the queue.

8aec412ff697bc14995746953912ca6fdf2c9ba8 02-Jul-2013 Lennart Poettering <lennart@poettering.net>

machined: sync to /run after job completed

6c12b52e19640747e96f89d85422941a23dc6b29 01-Jul-2013 Lennart Poettering <lennart@poettering.net>

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.

c2756a68401102786be343712c0c35acbd73d28d 28-Jun-2013 Lennart Poettering <lennart@poettering.net>

core: add transient units Transient units can be created via the bus API. They are configured via the method call parameters rather than on-disk files. They are subject to normal GC. Transient units currently may only be created for services (however, we will extend this), and currently only ExecStart= and the cgroup parameters can be configured (also to be extended). Transient units require a unique name, that previously had no configuration file on disk. A tool systemd-run is added that makes use of this functionality to run arbitrary command lines as transient services: $ systemd-run /bin/ping www.heise.de Will cause systemd to create a new transient service and run ping in it.

241da3287d0c16f79e2f415f17543599b3e73c85 28-Jun-2013 Lennart Poettering <lennart@poettering.net>

unit: make sure the dropins we write are high-priority

b42defe3b8ed3947d85db654a6cdb1b9999f394d 27-Jun-2013 Lennart Poettering <lennart@poettering.net>

dbus: make more cgroup attributes runtime settable

8e2af478402414f060bbc16e1b4bbe7de1779c13 27-Jun-2013 Lennart Poettering <lennart@poettering.net>

dbus: add infrastructure for changing multiple properties at once on units and hook some cgroup attributes up to it This introduces two bus calls to make runtime changes to selected bus properties, optionally with persistence. This currently hooks this up only for three cgroup atributes, but this brings the infrastructure to add more changable attributes. This allows setting multiple attributes at once, and takes an array rather than a dictionary of properties, in order to implement simple resetting of lists using the same approach as when they are sourced from unit files. This means, that list properties are appended to by this call, unless they are first reset via assigning the empty list.

4ad490007b70e6ac18d3cb04fa2ed92eba1451fa 27-Jun-2013 Lennart Poettering <lennart@poettering.net>

core: general cgroup rework Replace the very generic cgroup hookup with a much simpler one. With this change only the high-level cgroup settings remain, the ability to set arbitrary cgroup attributes is removed, so is support for adding units to arbitrary cgroup controllers or setting arbitrary paths for them (especially paths that are different for the various controllers). This also introduces a new -.slice root slice, that is the parent of system.slice and friends. This enables easy admin configuration of root-level cgrouo properties. This replaces DeviceDeny= by DevicePolicy=, and implicitly adds in /dev/null, /dev/zero and friends if DeviceAllow= is used (unless this is turned off by DevicePolicy=).

/systemd/Makefile.am /systemd/TODO cgroup-attr.c cgroup-attr.h cgroup-semantics.c cgroup-semantics.h cgroup.c cgroup.h dbus-cgroup.c dbus-cgroup.h dbus-execute.c dbus-execute.h dbus-manager.c dbus-mount.c dbus-service.c dbus-slice.c dbus-socket.c dbus-swap.c dbus-unit.c dbus-unit.h dbus.c execute.c execute.h load-fragment-gperf.gperf.m4 load-fragment.c load-fragment.h main.c manager.c manager.h mount.c mount.h service.c service.h slice.c slice.h socket.c socket.h special.h swap.c swap.h unit.c unit.h /systemd/src/login/logind-machine.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user.c /systemd/src/shared/cgroup-label.c /systemd/src/shared/cgroup-show.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/cgroup-util.h /systemd/src/shared/fileio.c /systemd/src/shared/mkdir.c /systemd/src/shared/mkdir.h /systemd/src/systemctl/systemctl.c /systemd/src/test/test-cgroup.c /systemd/units/-.slice /systemd/units/slices.target /systemd/units/system.slice
9444b1f20e311f073864d81e913bd4f32fe95cfd 20-Jun-2013 Lennart Poettering <lennart@poettering.net>

logind: add infrastructure to keep track of machines, and move to slices - This changes all logind cgroup objects to use slice objects rather than fixed croup locations. - logind can now collect minimal information about running VMs/containers. As fixed cgroup locations can no longer be used we need an entity that keeps track of machine cgroups in whatever slice they might be located. Since logind already keeps track of users, sessions and seats this is a trivial addition. - nspawn will now register with logind and pass various bits of metadata along. A new option "--slice=" has been added to place the container in a specific slice. - loginctl gained commands to list, introspect and terminate machines. - user.slice and machine.slice will now be pulled in by logind.service, since only logind.service requires this slice.

/systemd/Makefile.am /systemd/TODO /systemd/catalog/systemd.catalog /systemd/src/cgls/cgls.c cgroup.c dbus-manager.c dbus-unit.c manager.h service.c socket.c special.h unit-printf.c unit.c unit.h /systemd/src/login/loginctl.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-machine-dbus.c /systemd/src/login/logind-machine.c /systemd/src/login/logind-machine.h /systemd/src/login/logind-seat-dbus.c /systemd/src/login/logind-session-dbus.c /systemd/src/login/logind-session.c /systemd/src/login/logind-session.h /systemd/src/login/logind-user-dbus.c /systemd/src/login/logind-user.c /systemd/src/login/logind-user.h /systemd/src/login/logind.c /systemd/src/login/logind.h /systemd/src/login/sd-login.c /systemd/src/login/user-sessions.c /systemd/src/nspawn/nspawn.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/cgroup-util.h /systemd/src/shared/unit-name.c /systemd/src/systemd/sd-bus.h /systemd/src/systemd/sd-messages.h /systemd/src/test/test-cgroup-util.c /systemd/units/machine.slice /systemd/units/system.slice /systemd/units/systemd-logind.service.in /systemd/units/user.slice
702a2d8f6a90b999cef0fbf75a226a770f863b00 18-Jun-2013 Lennart Poettering <lennart@poettering.net>

core: unref slice ref after use

a016b9228f338cb9b380ce7e00826ef462767d98 17-Jun-2013 Lennart Poettering <lennart@poettering.net>

core: add new .slice unit type for partitioning systems In order to prepare for the kernel cgroup rework, let's introduce a new unit type to systemd, the "slice". Slices can be arranged in a tree and are useful to partition resources freely and hierarchally by the user. Each service unit can now be assigned to one of these slices, and later on login users and machines may too. Slices translate pretty directly to the cgroup hierarchy, and the various objects can be assigned to any of the slices in the tree.

d956ac29a1b8120e83922fa8e75cdd8f6e562529 06-May-2013 Lennart Poettering <lennart@poettering.net>

core: unit_inactive_or_pending() should actually do as it claims

44a6b1b68029833893f6e9cee35aa27a974038f6 03-May-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Add __attribute__((const, pure, format)) in various places I'm assuming that it's fine if a _const_ or _pure_ function calls assert. It is assumed that the assert won't trigger, and even if it does, it can only trigger on the first call with a given set of parameters, and we don't care if the compiler moves the order of calls.

automount.h cgroup-attr.h cgroup.h condition.h device.c device.h execute.c execute.h job.c job.h kill.h manager.h mount.c mount.h path.c path.h selinux-access.c service.c service.h snapshot.c snapshot.h socket.c socket.h swap.c swap.h target.c target.h timer.c timer.h transaction.c unit.c unit.h /systemd/src/journal/catalog.h /systemd/src/journal/fsprg.c /systemd/src/journal/fsprg.h /systemd/src/journal/journal-file.c /systemd/src/journal/journal-file.h /systemd/src/journal/journal-send.c /systemd/src/journal/journald-rate-limit.c /systemd/src/journal/journald-server.h /systemd/src/journal/journald-syslog.h /systemd/src/journal/lookup3.h /systemd/src/journal/mmap-cache.c /systemd/src/journal/sd-journal.c /systemd/src/login/logind-action.h /systemd/src/login/logind-session.h /systemd/src/login/logind-user.h /systemd/src/shared/calendarspec.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/cgroup-util.h /systemd/src/shared/dbus-common.h /systemd/src/shared/env-util.c /systemd/src/shared/env-util.h /systemd/src/shared/exit-status.h /systemd/src/shared/hashmap.h /systemd/src/shared/install.h /systemd/src/shared/log.h /systemd/src/shared/logs-show.h /systemd/src/shared/pager.h /systemd/src/shared/path-lookup.h /systemd/src/shared/path-util.h /systemd/src/shared/prioq.c /systemd/src/shared/prioq.h /systemd/src/shared/socket-util.h /systemd/src/shared/strv.h /systemd/src/shared/time-util.h /systemd/src/shared/unit-name.h /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/shared/utmp-wtmp.c /systemd/src/shutdownd/shutdownd.c /systemd/src/systemctl/systemctl.c
5954c07433b134694256b9989f2ad3f85a643976 30-Apr-2013 Lennart Poettering <lennart@poettering.net>

cgroup: do not allow manipulating the cgroup path of units within the systemd:/system subtree

fcf8c44041a5138a170f9a442809c032259a26b1 26-Apr-2013 Mirco Tischler <mt-ml@gmx.de>

core: remove duplicate MESSAGE= from log message This was needed with log_struct_unit() but log_notice_unit() adds it anyway.

b1e2b33c5258f1cefcee55116ac5d049478c804d 26-Apr-2013 Cristian Rodríguez <crrodriguez@opensuse.org>

Add some extra __attribute__ ((format)) s

31afa0a44c2d7f93d837c840cdbd623982ac165f 26-Apr-2013 Lennart Poettering <lennart@poettering.net>

unit: rework stop pending logic When a trigger unit wants to know if a stop is queued for it, we should just check precisely that and do not check whether it is actually stopped already. This is because we use these checks usually from state change calls where the state variables are not updated yet. This change splits unit_pending_inactive() into two calls unit_inactive_or_pending() and unit_stop_pending(). The former checks state and pending jobs, the latter only pending jobs.

78edb35ab4f4227485cb9ec816b43c37e0d5e62a 25-Apr-2013 Lennart Poettering <lennart@poettering.net>

cgroup: always validate cgroup controller names Let's better be safe than sorry.

3ecaa09bccd8a59c9f1e06756a1334a162206dc4 23-Apr-2013 Lennart Poettering <lennart@poettering.net>

unit: rework trigger dependency logic Instead of having explicit type-specific callbacks that inform the triggering unit when a triggered unit changes state, make this generic so that state changes are forwarded betwee any triggered and triggering unit. Also, get rid of UnitRef references from automount, timer, path units, to the units they trigger and rely exclsuively on UNIT_TRIGGER type dendencies.

ae018d9bc900d6355dea4af05119b49c67945184 23-Apr-2013 Lennart Poettering <lennart@poettering.net>

cgroup: make sure all our cgroup objects have a suffix and are properly escaped Session objects will now get the .session suffix, user objects the .user suffix, nspawn containers the .nspawn suffix. This also changes the user cgroups to be named after the numeric UID rather than the username, since this allows us the parse these paths standalone without requiring access to the cgroup file system. This also changes the mapping of instanced units to cgroups. Instead of mapping foo@bar.service to the cgroup path /user/foo@.service/bar we will now map it to /user/foo@.service/foo@bar.service, in order to ensure that all our objects are properly suffixed in the tree.

c1b6628d64e5340d905d974bb95d673a4aae60c1 17-Apr-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: log a few more things under UNIT=...

7a9ec5c9027d919839ab6e286ede753caa164241 15-Apr-2013 Lennart Poettering <lennart@poettering.net>

core: let's make our log messages proper sentences with full stops

b92bea5d2a9481de69bb627a7b442a9f58fca43d 06-Apr-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Use initalization instead of explicit zeroing Before, we would initialize many fields twice: first by filling the structure with zeros, and then a second time with the real values. We can let the compiler do the job for us, avoiding one copy. A downside of this patch is that text gets slightly bigger. This is because all zero() calls are effectively inlined: $ size build/.libs/systemd text data bss dec hex filename before 897737 107300 2560 1007597 f5fed build/.libs/systemd after 897873 107300 2560 1007733 f6075 build/.libs/systemd … actually less than 1‰. A few asserts that the parameter is not null had to be removed. I don't think this changes much, because first, it is quite unlikely for the assert to fail, and second, an immediate SEGV is almost as good as an assert.

dbus-execute.c dbus.c device.c execute.c job.c locale-setup.c loopback-setup.c main.c manager.c mount.c service.c swap.c umount.c unit.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/hostname/hostnamectl.c /systemd/src/journal/journald-server.c /systemd/src/journal/journald-stream.c /systemd/src/journal/journald-syslog.c /systemd/src/libsystemd-bus/bus-socket.c /systemd/src/libsystemd-bus/sd-bus.c /systemd/src/locale/localectl.c /systemd/src/locale/localed.c /systemd/src/login/loginctl.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-session.c /systemd/src/login/logind.c /systemd/src/login/pam-module.c /systemd/src/nspawn/nspawn.c /systemd/src/python-systemd/_reader.c /systemd/src/readahead/readahead-collect.c /systemd/src/remount-fs/remount-fs.c /systemd/src/reply-password/reply-password.c /systemd/src/shared/ask-password-api.c /systemd/src/shared/dbus-loop.c /systemd/src/shared/install.c /systemd/src/shared/log.c /systemd/src/shared/util.c /systemd/src/shared/utmp-wtmp.c /systemd/src/shared/virt.c /systemd/src/shutdownd/shutdownd.c /systemd/src/stdio-bridge/stdio-bridge.c /systemd/src/systemctl/systemctl.c /systemd/src/timedate/timedatectl.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/udev/udev-builtin-net_id.c /systemd/src/update-utmp/update-utmp.c /systemd/src/vconsole/vconsole-setup.c
2fa4092c2829dd14e50c430ae2f23551d23c6c1d 04-Apr-2013 Lennart Poettering <lennart@poettering.net>

util: make time formatting a bit smarter Instead of outputting "5h 55s 50ms 3us" we'll now output "5h 55.050003s". Also, while outputting the accuracy is configurable. Basically we now try use "dot notation" for all time values > 1min. For >= 1s we use 's' as unit, otherwise for >= 1ms we use 'ms' as unit, and finally 'us'. This should give reasonably values in most cases.

574d5f2dfc25226afc718aa5ba1a145fe5cad221 03-Apr-2013 Lennart Poettering <lennart@poettering.net>

util: rename write_one_line_file() to write_string_file() You can write much more than just one line with this call (and we frequently do), so let's correct the naming.

2875e22b65452896d5569eecb3a08265dd658173 02-Apr-2013 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

Replace s/Dropin/DropIn/

ae7a7182da31371555fceb2aed609e40a64b900a 02-Apr-2013 Oleksii Shevchuk <alxchk@gmail.com>

Introspect and monitor dropin configuration

335b5240ae584ed184afc683519bf19d6e1e1145 23-Mar-2013 Lennart Poettering <lennart@poettering.net>

unit: never retroactively start requisites Requesites are not supposed to be auto-started afterall, they are just checks, so don't try to be smarter here than appropriate. Based on a patch from Michal Schmidt.

d91c34f21ff7445dcee3efe2368aebe2d6c266db 22-Mar-2013 Lennart Poettering <lennart@poettering.net>

exec: Assigning the empty string to CapabilityBoundSet= should drop all caps Previously, it would set all caps, but it should drop them all, anything else makes little sense. Also, document that this works as it does, and what to do in order to assign all caps to the bounding set. https://bugzilla.redhat.com/show_bug.cgi?id=914705

814cc562121270e2d5de0630b773792c74990a9c 13-Mar-2013 Michal Schmidt <mschmidt@redhat.com>

core: single unit_kill implementation for all unit types There are very few differences in the implementations of the kill method in the unit types that have one. Let's unify them. This does not yet unify unit_kill() with unit_kill_context().

6b19ad24d3b6ade48d9e3d29e5348fc6b8d7c811 02-Mar-2013 Michal Schmidt <mschmidt@redhat.com>

unit: count deserialized job only after it's definitely installed Installation of a deserialized job may fail (though purely in theory), so increase the running job counter only when succeeding.

9e9e2b722cf796b58e959cd174d87ce0ec0bc996 01-Mar-2013 Michal Schmidt <mschmidt@redhat.com>

core: fix running jobs counters after reload/reexec All active units will call unit_notify() during coldplug, so we just make sure we're counting from zero again and get the correct result for n_on_console. For n_running_jobs we likewise reset it to zero and then count the running jobs as we encounter them in deserialization.

bf6dcfa6a79a459239799a21bdcba115d696a006 01-Mar-2013 Oleksii Shevchuk <alxchk@gmail.com>

unit: fix the race in deserialization. unit_notify is fired in deserelization code (particulary in service_set_state). Units passed in random order, and there is possibility, that unit with StopWhenUnneeded=yes passed before it actual dependecies. In that case unit will be stopped as unneeded, because deps in UNIT_INACTIVE state yet. So, reuse similar logic (unit.c:1421) to avoid this race

7ed9f6cd785634dd093e1b1550c3c6183177abf6 28-Feb-2013 Michal Schmidt <mschmidt@redhat.com>

core: count active units that may mind our printing to /dev/console

546ac4f0078228ef0bdd764dc7566cacf684c562 28-Feb-2013 Michal Schmidt <mschmidt@redhat.com>

core/unit: use a temp variable for manager pointer in unit_notify()

49b1d377263f33991a03235779e50f61273ba649 28-Feb-2013 Michal Schmidt <mschmidt@redhat.com>

core: redefine unit_status_printf() Take advantage of the fact that almost all callers want to pass unit description as the last parameter. Those who don't can use the more flexible manager_status_printf().

25cee55076a7c00c0a584731c2705686cc843210 28-Feb-2013 Michal Schmidt <mschmidt@redhat.com>

core: add manager_status_printf() unit_status_printf() checks the state of the manager, not of the unit as such. Move it to manager.c and rename it to manager_status_printf(). Temporarily keep unit_status_printf as a wrapper macro.

26d04f86a36595e3565c74d67863e076c3e3c773 27-Feb-2013 Lennart Poettering <lennart@poettering.net>

unit: rework resource management API This introduces a new static list of known attributes and their special semantics. This means that cgroup attribute values can now be automatically translated from user to kernel notation for command line set settings, too. This also adds proper support for multi-line attributes.

9d246da3c630559924a0262769c8493fa22c7acc 16-Feb-2013 Michal Schmidt <mschmidt@redhat.com>

unit: don't Require systemd-journald.socket from units It is not really necessary to have a hard requirement dependency on systemd-journald.socket in almost every unit. The socket gets pulled into boot via at least two ways: sockets.target -> systemd-journald.socket sysinit.target -> systemd-journald.service -> systemd-journald.socket So just assume something pulled the socket in and drop the automatic requirement dependencies on it. "systemctl stop systemd-journald.socket" will now not take the whole system down with it.

a5c32cff1f56afe6f0c6c70d91a88a7a8238b2d7 14-Feb-2013 Harald Hoyer <harald@redhat.com>

honor SELinux labels, when creating and writing config files Also split out some fileio functions to fileio.c and provide a SELinux aware pendant in fileio-label.c see https://bugzilla.redhat.com/show_bug.cgi?id=881577

/systemd/Makefile.am /systemd/src/analyze/systemd-analyze.c /systemd/src/binfmt/binfmt.c /systemd/src/bootchart/bootchart.c /systemd/src/cgtop/cgtop.c cgroup-attr.c condition.c dbus-execute.c dbus-unit.c execute.c hostname-setup.c locale-setup.c machine-id-setup.c main.c service.c unit.c /systemd/src/fsck/fsck.c /systemd/src/fstab-generator/fstab-generator.c /systemd/src/getty-generator/getty-generator.c /systemd/src/hostname/hostnamectl.c /systemd/src/hostname/hostnamed.c /systemd/src/journal/journald-server.c /systemd/src/locale/localed.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-session.c /systemd/src/login/logind-user.c /systemd/src/login/pam-module.c /systemd/src/login/sd-login.c /systemd/src/login/user-sessions.c /systemd/src/modules-load/modules-load.c /systemd/src/nspawn/nspawn.c /systemd/src/quotacheck/quotacheck.c /systemd/src/readahead/readahead-common.c /systemd/src/shared/audit.c /systemd/src/shared/capability.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/fileio-label.c /systemd/src/shared/fileio-label.h /systemd/src/shared/fileio.c /systemd/src/shared/fileio.h /systemd/src/shared/hwclock.c /systemd/src/shared/label.c /systemd/src/shared/label.h /systemd/src/shared/socket-util.c /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/shared/virt.c /systemd/src/shutdownd/shutdownd.c /systemd/src/sleep/sleep.c /systemd/src/sysctl/sysctl.c /systemd/src/systemctl/systemctl.c /systemd/src/test/test-unit-file.c /systemd/src/timedate/timedated.c /systemd/src/udev/udev-builtin-net_id.c /systemd/src/udev/udevd.c /systemd/src/vconsole/vconsole-setup.c
cd2086fe6573df923dc53ef33998c9fff8c2bda5 26-Jan-2013 Lennart Poettering <lennart@poettering.net>

core: unify kill code of mount, service, socket, swap units

6d3a739048deab5c10a0debdad788e19898144cc 19-Jan-2013 Lennart Poettering <lennart@poettering.net>

unit: fix typo

71645acac27da55d510f2e4d61cc61b4e5b93035 19-Jan-2013 Lennart Poettering <lennart@poettering.net>

unit: optionally allow making cgroup attribute changes persistent

e884315e3d28df0d5f4e7d4590730e9760b8f447 19-Jan-2013 Lennart Poettering <lennart@poettering.net>

cgroup: additional validity checks for cgroup attribute names

bbc9006e6b5665073149331d75c104a33224dc19 18-Jan-2013 Mirco Tischler <mt-ml@gmx.de>

core: log USER_UNIT instead of UNIT if in user session

8755586eba8b824851f11aa6c3f8f184ed69a30a 17-Jan-2013 Nestor Ovroy <novroy@riseup.net>

core: corrects check of strduped controller string In commit 246aa6d (core: add bus API and systemctl commands for altering cgroup parameters during runtime), when rewriting unit_add_one_default_cgroup to prefered style, the check of strduped b->controller was incorrectly changed to check the containing structure. Correct it.

246aa6dd9dcea84bb945d16ec86e69f869dbb9b4 14-Jan-2013 Lennart Poettering <lennart@poettering.net>

core: add bus API and systemctl commands for altering cgroup parameters during runtime

8afbb8e1180dce3cb33a14fc3ec5afcf501104e6 11-Jan-2013 Lennart Poettering <lennart@poettering.net>

unit: allow extension of unit files with .d/*.conf drop-ins For all unit files foobar.service we will now read foobar.service.d/*.conf, too. This may be used to override certain unit settings without having to edit unit files directly. This makes it really easy to change specific settings for services without having to edit any unit file: mkdir /etc/systemd/system/avahi-daemon.service.d/ echo -e '[Service]\nNice=99' > /etc/systemd/system/avahi-daemon.service.d/nice.conf systemctl daemon-reload

36697dc0199e25f09b78090fcf5f1cf8a3648ffd 23-Nov-2012 Lennart Poettering <lennart@poettering.net>

timer: implement calendar time events

68b29a9fca915c83b9192790ec61189430cd5de6 22-Nov-2012 Lennart Poettering <lennart@poettering.net>

manager: introduce watch_init() initializer for watches

23635a8547eac0c05922609f5930badc86faf080 18-Oct-2012 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

systemd: use structured logging for unit changes Information which unit a log entry pertains to enables systemctl status to display more log messages.

1ca6783f5ea3755bd83e723f529c2eda512c7fed 13-Oct-2012 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

log: introduce a macro to format message id The MESSAGE_ID=... stanza will appear in countless number of places. It is just too long to write it out in full each time. Incidentally, this also fixes a typo of MESSSAGE is three places.

67445f4e22ad924394acdd4fd49e6f238244a5ca 18-Sep-2012 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

core: move ManagerRunningAs to shared Note: I did s/MANAGER/SYSTEMD/ everywhere, even though it makes the patch quite verbose. Nevertheless, keeping MANAGER prefix in some places, and SYSTEMD prefix in others would just lead to confusion down the road. Better to rip off the band-aid now.

3ef63c317481c2b3f1fe39e1b0f130aac3544522 18-Sep-2012 Lennart Poettering <lennart@poettering.net>

unit-printf: before resolving exec context specifiers check whether the object actually has an exec context

41f9172f427bdbb8221c64029f78364b8dd4e527 18-Sep-2012 Lennart Poettering <lennart@poettering.net>

unit: split unit_printf() and friends into its own .c file

99006251161aee07b6a099e3186b4360be66eeaa 18-Sep-2012 Lennart Poettering <lennart@poettering.net>

unit: fix %f resolving

faa368e3376cb5e3e3c27550fdde652f1d3c9584 17-Sep-2012 Lennart Poettering <lennart@poettering.net>

conf-parser: don't unescape parsed configuration strings by default In many cases this might have a negative effect since we drop escaping from strings where we better shouldn't have dropped it. If unescaping makes sense for some settings we can readd it later again, on a per-case basis. https://bugs.freedesktop.org/show_bug.cgi?id=54522

c53158818d8cdaf46b3f1b5299b9bda118a1043f 13-Sep-2012 Thomas Hindoe Paaboel Andersen <phomes@gmail.com>

man: fix a bunch of typos in docs https://bugs.freedesktop.org/show_bug.cgi?id=54501

9d576438a1ee932bde1fb0f1be1aa5cae646fd4e 10-Sep-2012 Lennart Poettering <lennart@poettering.net>

unit: don't allow units to be gc'ed that still are referenced via UnitRef

81270860a5b8c6794f0c7bac8becfdd0c41a9385 04-Sep-2012 Lennart Poettering <lennart@poettering.net>

journal: suppress structured messages if they'd go to the console

877d54e9b09e093c2102f519a84e2a52637ae035 04-Sep-2012 Lennart Poettering <lennart@poettering.net>

journal: generate structured journal messages for a number of events

ac6a4abed3e69daf6795e02fa4be1719ae6ae6ab 26-Jul-2012 Michal Schmidt <mschmidt@redhat.com>

unit: add missing deps in unit_dependency_table also reorder the table according to the enum order.

60649f17bd5ef8659dab474ace8bf42ee23ffca3 26-Jul-2012 Michal Schmidt <mschmidt@redhat.com>

unit: make the table of inverse deps symmetric

85e9a1010d16064ce435b84f02dc585bc645aade 26-Jul-2012 Michal Sekletar <msekleta@redhat.com>

systemd: added new dependency PartOf This should address TODO item "new dependency type to "group" services in a target". Semantic of new dependency is as follows. Once configured it creates dependency which will cause that all dependent units get stopped if unit they all depend on is stopped or restarted. Usual use case would be configuring PartOf=some.target in template unit file and WantedBy=some.target in [Install] section and enabling desired number of instances. In this case starting one instance won't pull in target but stopping or starting target(in case of WantedBy is properly configured) will cause stop/start of all instances.

cba6e0627d659a33df31aaa74d0d701c4bc9f317 20-Jul-2012 Lennart Poettering <lennart@poettering.net>

units: apply default resource limits to socket/mount/swap processes too

c74f17d96cccd4cc998fd037cb92046930188c91 20-Jul-2012 Lennart Poettering <lennart@poettering.net>

core: drop KillMode parameter from KillUnit() bus call It made no sense, and since we are documenting the bus calls now and want to include them in our stability promise we really should get it cleaned up sooner, not later.

6b78f9b4354010f8af2fe48c783ffd52b2db8f57 18-Jul-2012 Lennart Poettering <lennart@poettering.net>

unit: don't serialize job state, only unit state across switch-root

e06c73cc91e02a1a3dffdb0976fef754f1109e74 16-Jul-2012 Lennart Poettering <lennart@poettering.net>

unit: set default working directory to the user's home directory when running in user mode

d05c5031ad4c528fe6bbfed289519edb9f13180a 16-Jul-2012 Lennart Poettering <lennart@poettering.net>

unit: introduce %s specifier for the user shell

b2896c905bef7be7ed9a760d9d61aa6ad0f614a3 16-Jul-2012 Auke Kok <auke-jan.h.kok@intel.com>

unit: printf specifiers %u and %h: $USER and $HOME. These printf specifiers allow us to refer to $HOME and $USER in unit files. These are particularly helpful in instanced units that have "User=" set, and in systemd --user domains. The specifiers will return the pw_name and pw_dir fields if the unit file has a User= field. If the unit file does not have a User= field, the value substituted is either $USER or $HOME from the environment, or, if unset, the values from pw_name or pw_dir. This patch is somewhat after Ran Benita's original patch, which didn't get merged. I've split up the 2 specifiers and extended them to do what is logically expected from these specifiers. Note that expansion is done at `start` time, not after the units are parsed. Using `systemctl show` will just show the specifiers.

7f2cddae09fd2579ae24434df577bb5e5a157d86 13-Jul-2012 Lennart Poettering <lennart@poettering.net>

unit: rename BindTo= to BindsTo= all other dependencies are in 3rd person. Change BindTo= accordingly to BindsTo=. Of course, the dependency is widely used, hence we parse the old name too for compatibility.

b7def684941808600c344f0be7a2b9fcdda97e0f 13-Jul-2012 Lennart Poettering <lennart@poettering.net>

util: rename join() to strjoin() This is to match strappend() and the other string related functions.

f69614f811b133ececad4394e88f9549a017bd4e 10-Jul-2012 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>

unit: Move UnitLoadState definitions from core/unit.c to shared/unit-name.c This makes it possible to use them from systemctl without linking against the core.

5f73969991fa765f2826975c0fc5e47438b5e9ea 10-Jul-2012 Lennart Poettering <lennart@poettering.net>

unit-name: remove unit_name_is_valid_no_type() and move unit_name_is_valid() to unit-name.h

35eb6b124ebdf82bd77aad6e44962a9a039c4d33 25-Jun-2012 Lennart Poettering <lennart@poettering.net>

cryptsetup: fix escaping when generating cryptsetup units

48899192a7b28b6a338cc8ec18aa35ccd8867acb 13-Jun-2012 Michal Schmidt <mschmidt@redhat.com>

unit-name: introduce unit_dbus_path_from_name() Use the same function in core and in systemctl. get_unit_path() in systemctl becomes unnecessary.

1b64d026af01277e332d10d9e67e2eed5a4ded28 22-May-2012 Lennart Poettering <lennart@poettering.net>

units: remove service sysv_path variable and replace it by generic unit_path UnitPath= is also writable via native units and may be used by generators to clarify from which file a unit is generated. This patch also hooks up the cryptsetup and fstab generators to set UnitPath= accordingly.

49dbfa7b2b0bf3906704dac1eaeb4eba91056a19 21-May-2012 Lennart Poettering <lennart@poettering.net>

units: introduce new Documentation= field and make use of it everywhere This should help making the boot process a bit easier to explore and understand for the administrator. The simple idea is that "systemctl status" now shows a link to documentation alongside the other status and decriptionary information of a service. This patch adds the necessary fields to all our shipped units if we have proper documentation for them.

/systemd/man/systemd.special.xml /systemd/man/systemd.unit.xml dbus-unit.c dbus-unit.h load-fragment-gperf.gperf.m4 load-fragment.c load-fragment.h unit.c unit.h /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/systemctl/systemctl.c /systemd/units/basic.target /systemd/units/bluetooth.target /systemd/units/cryptsetup.target /systemd/units/dev-hugepages.mount /systemd/units/dev-mqueue.mount /systemd/units/emergency.service.in /systemd/units/emergency.target /systemd/units/final.target /systemd/units/getty.target /systemd/units/getty@.service.m4 /systemd/units/graphical.target /systemd/units/halt.target /systemd/units/hibernate.target /systemd/units/http-daemon.target /systemd/units/kexec.target /systemd/units/local-fs-pre.target /systemd/units/local-fs.target /systemd/units/mail-transfer-agent.target /systemd/units/multi-user.target /systemd/units/network.target /systemd/units/nss-lookup.target /systemd/units/nss-user-lookup.target /systemd/units/poweroff.target /systemd/units/printer.target /systemd/units/proc-sys-fs-binfmt_misc.mount /systemd/units/reboot.target /systemd/units/remote-fs-pre.target /systemd/units/remote-fs.target /systemd/units/rescue.service.m4.in /systemd/units/rescue.target /systemd/units/rpcbind.target /systemd/units/serial-getty@.service.m4 /systemd/units/shutdown.target /systemd/units/sigpwr.target /systemd/units/sleep.target /systemd/units/smartcard.target /systemd/units/sockets.target /systemd/units/sound.target /systemd/units/suspend.target /systemd/units/swap.target /systemd/units/sysinit.target /systemd/units/syslog.socket /systemd/units/syslog.target /systemd/units/systemd-ask-password-console.path /systemd/units/systemd-ask-password-console.service.in /systemd/units/systemd-ask-password-plymouth.path /systemd/units/systemd-ask-password-plymouth.service.in /systemd/units/systemd-ask-password-wall.path /systemd/units/systemd-ask-password-wall.service.in /systemd/units/systemd-binfmt.service.in /systemd/units/systemd-hostnamed.service.in /systemd/units/systemd-initctl.service.in /systemd/units/systemd-initctl.socket /systemd/units/systemd-journald.service.in /systemd/units/systemd-journald.socket /systemd/units/systemd-localed.service.in /systemd/units/systemd-logind.service.in /systemd/units/systemd-modules-load.service.in /systemd/units/systemd-shutdownd.service.in /systemd/units/systemd-shutdownd.socket /systemd/units/systemd-sysctl.service.in /systemd/units/systemd-timedated-ntp.target /systemd/units/systemd-timedated.service.in /systemd/units/systemd-tmpfiles-clean.service.in /systemd/units/systemd-tmpfiles-clean.timer /systemd/units/systemd-tmpfiles-setup.service.in /systemd/units/systemd-udev-control.socket /systemd/units/systemd-udev-kernel.socket /systemd/units/systemd-udev-settle.service.in /systemd/units/systemd-udev-trigger.service.in /systemd/units/systemd-udev.service.in /systemd/units/systemd-update-utmp-runlevel.service.in /systemd/units/systemd-update-utmp-shutdown.service.in /systemd/units/systemd-vconsole-setup.service.in /systemd/units/time-sync.target /systemd/units/umount.target /systemd/units/user/default.target /systemd/units/user/exit.service.in /systemd/units/user/exit.target
c69182961b00707d977957cf81d5c41cfbeab429 14-May-2012 Michal Schmidt <mschmidt@redhat.com>

unit: unit type dependent status messages Instead of generic "Starting..." and "Started" messages for all unit use type-dependent messages. For example, mounts will announce "Mounting..." and "Mounted". Add status messages to units of types that used to be entirely silent (automounts, sockets, targets, devices). For unit types whose jobs are instantaneous, report only the job completion, not the starting event. Socket units with non-instantaneous jobs are rare (Exec*= is not used often in socket units), so I chose not to print the starting messages for them either. This will hopefully give people better understanding of the boot.

9ab7a8d2a30f440c008d127113419030e4572cb4 14-May-2012 Michal Schmidt <mschmidt@redhat.com>

unit: print the color status marks on the left The alignment of the "[ OK ]" and "[FAILED]" status marks to the right side of the terminal makes it difficult to link them with the messages on the left if your console is wide. I considered the options: 1. Align them to the 80th column regardless of the console width. Disadvantage - either: - truncating messages needlessly, not using available space; or - If the message is long, write the mark over it. => ugly 2. Write them to the 80th column for short messages, and further to the right for longer ones. Disadvantage: - jagged look 3. Write the marks on the left, before the message. Disadvantage: - Breaks tradition from RHL. Advantages: + slightly simpler code + Will annoy holy-traditionalists. I chose option 3. BTW, Debian now uses similar marks on the left with its makefile-style boot. Special values of the "status" argument to status_vprintf are: NULL - no status mark, no message indentation "" - no status mark, message indented as if the mark was there

9eb977db5b89b44f254ab40c1876a76b7d7ea2d0 08-May-2012 Kay Sievers <kay@vrfy.org>

util: split-out path-util.[ch]

/systemd/Makefile.am /systemd/src/cgls/cgls.c /systemd/src/cgtop/cgtop.c automount.c cgroup.c condition.c device.c execute.c load-fragment.c manager.c mount-setup.c mount.c namespace.c path.c service.c socket.c swap.c umount.c unit.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/journal/sd-journal.c /systemd/src/login/logind-dbus.c /systemd/src/login/logind-inhibit.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-session.c /systemd/src/login/sysfs-show.c /systemd/src/nspawn/nspawn.c /systemd/src/remount-fs/remount-fs.c /systemd/src/shared/cgroup-show.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/conf-files.c /systemd/src/shared/conf-parser.c /systemd/src/shared/install.c /systemd/src/shared/label.c /systemd/src/shared/path-lookup.c /systemd/src/shared/path-util.c /systemd/src/shared/path-util.h /systemd/src/shared/socket-util.c /systemd/src/shared/unit-name.c /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/shared/utmp-wtmp.c /systemd/src/sysctl/sysctl.c /systemd/src/systemctl/systemctl.c /systemd/src/test/test-cgroup.c /systemd/src/test/test-install.c /systemd/src/tmpfiles/tmpfiles.c /systemd/src/tty-ask-password-agent/tty-ask-password-agent.c /systemd/src/udev/udev-rules.c
7c8fa05c4d5d01748ff2a04edb882afb3119b7d7 30-Apr-2012 Lennart Poettering <lennart@poettering.net>

unit: add new dependency type RequiresMountsFor= RequiresMountsFor= is a shortcut for adding requires and after dependencies to all mount units neeed for the specified paths. This solves a couple of issues regarding dep loop cycles for encrypted swap.

e0209d83e7b30153f43b1a633c955f66eb2c2e4a 25-Apr-2012 Michal Schmidt <mschmidt@redhat.com>

core: add NOP jobs, job type collapsing Two of our current job types are special: JOB_TRY_RESTART, JOB_RELOAD_OR_START. They differ from other job types by being sensitive to the unit active state. They perform some action when the unit is active and some other action otherwise. This raises a question: when exactly should the unit state be checked to make the decision? Currently the unit state is checked when the job becomes runnable. It's more sensible to check the state immediately when the job is added by the user. When the user types "systemctl try-restart foo.service", he really intends to restart the service if it's running right now. If it isn't running right now, the restart is pointless. Consider the example (from Bugzilla[1]): sleep.service takes some time to start. hello.service has After=sleep.service. Both services get started. Two jobs will appear: hello.service/start waiting sleep.service/start running Then someone runs "systemctl try-restart hello.service". Currently the try-restart operation will block and wait for sleep.service/start to complete. The correct result is to complete the try-restart operation immediately with success, because hello.service is not running. The two original jobs must not be disturbed by this. To fix this we introduce two new concepts: - a new job type: JOB_NOP A JOB_NOP job does not do anything to the unit. It does not pull in any dependencies. It is always immediately runnable. When installed to a unit, it sits in a special slot (u->nop_job) where it never conflicts with the installed job (u->job) of a different type. It never merges with jobs of other types, but it can merge into an already installed JOB_NOP job. - "collapsing" of job types When a job of one of the two special types is added, the state of the unit is checked immediately and the job type changes: JOB_TRY_RESTART -> JOB_RESTART or JOB_NOP JOB_RELOAD_OR_START -> JOB_RELOAD or JOB_START Should a job type JOB_RELOAD_OR_START appear later during job merging, it collapses immediately afterwards. Collapsing actually makes some things simpler, because there are now fewer job types that are allowed in the transaction. [1] Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=753586

5273510e9f228a300ec6207d4502f1c6253aed5e 23-Apr-2012 Michal Schmidt <mschmidt@redhat.com>

transaction: cancel jobs non-recursively on isolate Recursive cancellation of jobs would trigger OnFailure actions of dependent jobs. This is not desirable when isolating. Fixes https://bugzilla.redhat.com/show_bug.cgi?id=798328

39a18c60d07319ebfcfd476556729c2cadd616d6 24-Apr-2012 Michal Schmidt <mschmidt@redhat.com>

job: serialize jobs properly Jobs were not preserved correctly over a daemon-reload operation. A systemctl process waiting for a job completion received a job removal signal. The job itself changed its id. The job timeout started ticking all over again. This fixes the deficiencies.

97e7d748d1bf26790fc3b2607885f4ac8c4ecf3a 20-Apr-2012 Michal Schmidt <mschmidt@redhat.com>

job: job_uninstall() Split the uninstallation of the job from job_free() into a separate function. Adjust the callers. job_free() now only works on unlinked and uninstalled jobs. This enforces clear thinking about job lifetimes.

5430f7f2bc7330f3088b894166bf3524a067e3d8 12-Apr-2012 Lennart Poettering <lennart@poettering.net>

relicense to LGPLv2.1 (with exceptions) We finally got the OK from all contributors with non-trivial commits to relicense systemd from GPL2+ to LGPL2.1+. Some udev bits continue to be GPL2+ for now, but we are looking into relicensing them too, to allow free copy/paste of all code within systemd. The bits that used to be MIT continue to be MIT. The big benefit of the relicensing is that closed source code may now link against libsystemd-login.so and friends.

/systemd/LICENSE.GPL2 /systemd/LICENSE.LGPL2.1 /systemd/LICENSE.MIT /systemd/Makefile.am /systemd/README /systemd/autogen.sh /systemd/configure.ac /systemd/man/binfmt.d.xml /systemd/man/custom-html.xsl /systemd/man/daemon.xml /systemd/man/halt.xml /systemd/man/hostname.xml /systemd/man/journalctl.xml /systemd/man/journald.conf.xml /systemd/man/locale.conf.xml /systemd/man/loginctl.xml /systemd/man/logind.conf.xml /systemd/man/machine-id.xml /systemd/man/machine-info.xml /systemd/man/modules-load.d.xml /systemd/man/os-release.xml /systemd/man/pam_systemd.xml /systemd/man/runlevel.xml /systemd/man/sd-daemon.xml /systemd/man/sd-login.xml /systemd/man/sd-readahead.xml /systemd/man/sd_booted.xml /systemd/man/sd_get_seats.xml /systemd/man/sd_is_fifo.xml /systemd/man/sd_listen_fds.xml /systemd/man/sd_login_monitor_new.xml /systemd/man/sd_notify.xml /systemd/man/sd_pid_get_session.xml /systemd/man/sd_readahead.xml /systemd/man/sd_seat_get_active.xml /systemd/man/sd_session_is_active.xml /systemd/man/sd_uid_get_state.xml /systemd/man/shutdown.xml /systemd/man/sysctl.d.xml /systemd/man/systemctl.xml /systemd/man/systemd-ask-password.xml /systemd/man/systemd-cat.xml /systemd/man/systemd-cgls.xml /systemd/man/systemd-cgtop.xml /systemd/man/systemd-machine-id-setup.xml /systemd/man/systemd-notify.xml /systemd/man/systemd-nspawn.xml /systemd/man/systemd-tmpfiles.xml /systemd/man/systemd.automount.xml /systemd/man/systemd.conf.xml /systemd/man/systemd.device.xml /systemd/man/systemd.exec.xml /systemd/man/systemd.journal-fields.xml /systemd/man/systemd.mount.xml /systemd/man/systemd.path.xml /systemd/man/systemd.service.xml /systemd/man/systemd.snapshot.xml /systemd/man/systemd.socket.xml /systemd/man/systemd.special.xml /systemd/man/systemd.swap.xml /systemd/man/systemd.target.xml /systemd/man/systemd.timer.xml /systemd/man/systemd.unit.xml /systemd/man/systemd.xml /systemd/man/telinit.xml /systemd/man/timezone.xml /systemd/man/tmpfiles.d.xml /systemd/man/vconsole.conf.xml /systemd/rules/99-systemd.rules.in /systemd/src/Makefile /systemd/src/ac-power.c /systemd/src/ask-password-api.c /systemd/src/ask-password.c /systemd/src/binfmt/binfmt.c /systemd/src/bridge.c /systemd/src/cgls.c /systemd/src/cgroup-show.c /systemd/src/cgroup-show.h /systemd/src/cgroups-agent.c /systemd/src/cgtop.c ask-password-api.h automount.c automount.h build.h bus-errors.h cgroup-attr.c cgroup-attr.h cgroup.c cgroup.h condition.c condition.h dbus-automount.c dbus-automount.h dbus-device.c dbus-device.h dbus-execute.c dbus-execute.h dbus-job.c dbus-job.h dbus-loop.h dbus-manager.c dbus-manager.h dbus-mount.c dbus-mount.h dbus-path.c dbus-path.h dbus-service.c dbus-service.h dbus-snapshot.c dbus-snapshot.h dbus-socket.c dbus-socket.h dbus-swap.c dbus-swap.h dbus-target.c dbus-target.h dbus-timer.c dbus-timer.h dbus-unit.c dbus-unit.h dbus.c dbus.h device.c device.h execute.c execute.h fdset.c fdset.h ima-setup.c ima-setup.h job.c job.h kmod-setup.c kmod-setup.h load-dropin.c load-dropin.h load-fragment.c load-fragment.h locale-setup.c locale-setup.h manager.c manager.h mount.c mount.h namespace.c namespace.h path.c path.h polkit.h selinux-setup.c selinux-setup.h service.c service.h snapshot.c snapshot.h socket.c socket.h special.h swap.c swap.h sysfs-show.h target.c target.h tcpwrap.c tcpwrap.h timer.c timer.h unit.c unit.h /systemd/src/cryptsetup/cryptsetup-generator.c /systemd/src/cryptsetup/cryptsetup.c /systemd/src/dbus-common.c /systemd/src/dbus-common.h /systemd/src/dbus-loop.c /systemd/src/def.h /systemd/src/detect-virt.c /systemd/src/fsck.c /systemd/src/getty-generator.c /systemd/src/hostname-setup.c /systemd/src/hostname-setup.h /systemd/src/hostname/hostnamed.c /systemd/src/hostname/org.freedesktop.hostname1.conf /systemd/src/hostname/org.freedesktop.hostname1.policy.in /systemd/src/hostname/org.freedesktop.hostname1.service /systemd/src/initctl.c /systemd/src/install.c /systemd/src/install.h /systemd/src/journal/cat.c /systemd/src/journal/compress.c /systemd/src/journal/compress.h /systemd/src/journal/coredump.c /systemd/src/journal/journal-def.h /systemd/src/journal/journal-file.c /systemd/src/journal/journal-file.h /systemd/src/journal/journal-internal.h /systemd/src/journal/journal-rate-limit.c /systemd/src/journal/journal-rate-limit.h /systemd/src/journal/journal-send.c /systemd/src/journal/journalctl.c /systemd/src/journal/journald.c /systemd/src/journal/journald.conf /systemd/src/journal/journald.h /systemd/src/journal/libsystemd-journal.pc.in /systemd/src/journal/libsystemd-journal.sym /systemd/src/journal/sd-journal.c /systemd/src/journal/test-journal-send.c /systemd/src/journal/test-journal.c /systemd/src/libsystemd-id128.pc.in /systemd/src/libsystemd-id128.sym /systemd/src/locale/localed.c /systemd/src/locale/org.freedesktop.locale1.conf /systemd/src/locale/org.freedesktop.locale1.policy.in /systemd/src/locale/org.freedesktop.locale1.service /systemd/src/login/70-uaccess.rules /systemd/src/login/71-seat.rules /systemd/src/login/73-seat-late.rules.in /systemd/src/login/libsystemd-login.pc.in /systemd/src/login/libsystemd-login.sym /systemd/src/login/loginctl.c /systemd/src/login/logind-acl.c /systemd/src/login/logind-acl.h /systemd/src/login/logind-dbus.c /systemd/src/login/logind-device.c /systemd/src/login/logind-device.h /systemd/src/login/logind-seat-dbus.c /systemd/src/login/logind-seat.c /systemd/src/login/logind-seat.h /systemd/src/login/logind-session-dbus.c /systemd/src/login/logind-session.c /systemd/src/login/logind-session.h /systemd/src/login/logind-user-dbus.c /systemd/src/login/logind-user.c /systemd/src/login/logind-user.h /systemd/src/login/logind.c /systemd/src/login/logind.conf /systemd/src/login/logind.h /systemd/src/login/multi-seat-x.c /systemd/src/login/org.freedesktop.login1.conf /systemd/src/login/org.freedesktop.login1.policy.in /systemd/src/login/org.freedesktop.login1.service /systemd/src/login/pam-module.c /systemd/src/login/sd-login.c /systemd/src/login/sysfs-show.c /systemd/src/login/test-login.c /systemd/src/login/uaccess.c /systemd/src/login/user-sessions.c /systemd/src/logs-show.c /systemd/src/logs-show.h /systemd/src/loopback-setup.c /systemd/src/loopback-setup.h /systemd/src/machine-id-main.c /systemd/src/machine-id-setup.c /systemd/src/machine-id-setup.h /systemd/src/main.c /systemd/src/missing.h /systemd/src/modules-load.c /systemd/src/mount-setup.c /systemd/src/mount-setup.h /systemd/src/notify.c /systemd/src/nspawn.c /systemd/src/org.freedesktop.systemd1.conf /systemd/src/org.freedesktop.systemd1.policy.in.in /systemd/src/org.freedesktop.systemd1.service /systemd/src/path-lookup.c /systemd/src/path-lookup.h /systemd/src/polkit.c /systemd/src/quotacheck.c /systemd/src/random-seed.c /systemd/src/rc-local-generator.c /systemd/src/readahead/readahead-collect.c /systemd/src/readahead/readahead-common.c /systemd/src/readahead/readahead-common.h /systemd/src/readahead/readahead-replay.c /systemd/src/remount-api-vfs.c /systemd/src/reply-password.c /systemd/src/sd-id128.c /systemd/src/shared/acl-util.c /systemd/src/shared/acl-util.h /systemd/src/shared/audit.c /systemd/src/shared/audit.h /systemd/src/shared/capability.c /systemd/src/shared/capability.h /systemd/src/shared/cgroup-label.c /systemd/src/shared/cgroup-util.c /systemd/src/shared/cgroup-util.h /systemd/src/shared/conf-parser.c /systemd/src/shared/conf-parser.h /systemd/src/shared/exit-status.c /systemd/src/shared/exit-status.h /systemd/src/shared/hashmap.c /systemd/src/shared/hashmap.h /systemd/src/shared/label.c /systemd/src/shared/label.h /systemd/src/shared/list.h /systemd/src/shared/log.c /systemd/src/shared/log.h /systemd/src/shared/macro.h /systemd/src/shared/mkdir.c /systemd/src/shared/mkdir.h /systemd/src/shared/pager.c /systemd/src/shared/pager.h /systemd/src/shared/ratelimit.c /systemd/src/shared/ratelimit.h /systemd/src/shared/set.c /systemd/src/shared/set.h /systemd/src/shared/socket-label.c /systemd/src/shared/socket-util.c /systemd/src/shared/socket-util.h /systemd/src/shared/strv.c /systemd/src/shared/strv.h /systemd/src/shared/utf8.c /systemd/src/shared/utf8.h /systemd/src/shared/util.c /systemd/src/shared/util.h /systemd/src/shared/virt.c /systemd/src/shared/virt.h /systemd/src/shutdown.c /systemd/src/shutdownd.c /systemd/src/spawn-ask-password-agent.c /systemd/src/spawn-ask-password-agent.h /systemd/src/spawn-polkit-agent.c /systemd/src/spawn-polkit-agent.h /systemd/src/specifier.c /systemd/src/specifier.h /systemd/src/sysctl.c /systemd/src/system.conf /systemd/src/systemctl.c /systemd/src/systemd-bash-completion.sh /systemd/src/systemd.pc.in /systemd/src/systemd/sd-id128.h /systemd/src/systemd/sd-journal.h /systemd/src/systemd/sd-login.h /systemd/src/systemd/sd-messages.h /systemd/src/systemd/sd-shutdown.h /systemd/src/test-cgroup.c /systemd/src/test-daemon.c /systemd/src/test-engine.c /systemd/src/test-env-replace.c /systemd/src/test-hostname.c /systemd/src/test-id128.c /systemd/src/test-install.c /systemd/src/test-job-type.c /systemd/src/test-loopback.c /systemd/src/test-ns.c /systemd/src/test-strv.c /systemd/src/test-watchdog.c /systemd/src/timedate/org.freedesktop.timedate1.conf /systemd/src/timedate/org.freedesktop.timedate1.policy.in /systemd/src/timedate/org.freedesktop.timedate1.service /systemd/src/timedate/timedated.c /systemd/src/timestamp.c /systemd/src/tmpfiles.c /systemd/src/tty-ask-password-agent.c /systemd/src/umount.c /systemd/src/umount.h /systemd/src/unit-name.c /systemd/src/unit-name.h /systemd/src/update-utmp.c /systemd/src/user.conf /systemd/src/utmp-wtmp.c /systemd/src/utmp-wtmp.h /systemd/src/vconsole/vconsole-setup.c /systemd/src/watchdog.c /systemd/src/watchdog.h /systemd/sysctl.d/coredump.conf.in /systemd/tmpfiles.d/legacy.conf /systemd/tmpfiles.d/systemd.conf /systemd/tmpfiles.d/tmp.conf /systemd/tmpfiles.d/x11.conf /systemd/units/basic.target /systemd/units/bluetooth.target /systemd/units/console-shell.service.m4.in /systemd/units/cryptsetup.target /systemd/units/dev-hugepages.mount /systemd/units/dev-mqueue.mount /systemd/units/emergency.service.in /systemd/units/emergency.target /systemd/units/fedora/halt-local.service /systemd/units/fedora/prefdm.service /systemd/units/fedora/rc-local.service /systemd/units/final.target /systemd/units/frugalware/display-manager.service /systemd/units/fsck-root.service.in /systemd/units/fsck@.service.in /systemd/units/getty.target /systemd/units/getty@.service.m4 /systemd/units/graphical.target /systemd/units/halt.service.in /systemd/units/halt.target /systemd/units/http-daemon.target /systemd/units/kexec.service.in /systemd/units/kexec.target /systemd/units/local-fs-pre.target /systemd/units/local-fs.target /systemd/units/mageia/prefdm.service /systemd/units/mail-transfer-agent.target /systemd/units/mandriva/prefdm.service /systemd/units/multi-user.target /systemd/units/network.target /systemd/units/nss-lookup.target /systemd/units/nss-user-lookup.target /systemd/units/plymouth-halt.service /systemd/units/plymouth-kexec.service /systemd/units/plymouth-poweroff.service /systemd/units/plymouth-quit-wait.service /systemd/units/plymouth-quit.service /systemd/units/plymouth-read-write.service /systemd/units/plymouth-reboot.service /systemd/units/plymouth-start.service /systemd/units/poweroff.service.in /systemd/units/poweroff.target /systemd/units/printer.target /systemd/units/proc-sys-fs-binfmt_misc.automount /systemd/units/proc-sys-fs-binfmt_misc.mount /systemd/units/quotacheck.service.in /systemd/units/quotaon.service /systemd/units/reboot.service.in /systemd/units/reboot.target /systemd/units/remote-fs-pre.target /systemd/units/remote-fs.target /systemd/units/remount-rootfs.service /systemd/units/rescue.service.m4.in /systemd/units/rescue.target /systemd/units/rpcbind.target /systemd/units/serial-getty@.service.m4 /systemd/units/shutdown.target /systemd/units/sigpwr.target /systemd/units/smartcard.target /systemd/units/sockets.target /systemd/units/sound.target /systemd/units/suse/halt-local.service /systemd/units/suse/rc-local.service /systemd/units/swap.target /systemd/units/sys-fs-fuse-connections.mount /systemd/units/sys-kernel-config.mount /systemd/units/sys-kernel-debug.mount /systemd/units/sysinit.target /systemd/units/syslog.socket /systemd/units/syslog.target /systemd/units/systemd-ask-password-console.path /systemd/units/systemd-ask-password-console.service.in /systemd/units/systemd-ask-password-plymouth.path /systemd/units/systemd-ask-password-plymouth.service.in /systemd/units/systemd-ask-password-wall.path /systemd/units/systemd-ask-password-wall.service.in /systemd/units/systemd-binfmt.service.in /systemd/units/systemd-hostnamed.service.in /systemd/units/systemd-initctl.service.in /systemd/units/systemd-initctl.socket /systemd/units/systemd-journald.service.in /systemd/units/systemd-journald.socket /systemd/units/systemd-localed.service.in /systemd/units/systemd-logind.service.in /systemd/units/systemd-modules-load.service.in /systemd/units/systemd-random-seed-load.service.in /systemd/units/systemd-random-seed-save.service.in /systemd/units/systemd-readahead-collect.service.in /systemd/units/systemd-readahead-done.service.in /systemd/units/systemd-readahead-done.timer /systemd/units/systemd-readahead-replay.service.in /systemd/units/systemd-remount-api-vfs.service.in /systemd/units/systemd-shutdownd.service.in /systemd/units/systemd-shutdownd.socket /systemd/units/systemd-sysctl.service.in /systemd/units/systemd-timedated.service.in /systemd/units/systemd-tmpfiles-clean.service.in /systemd/units/systemd-tmpfiles-clean.timer /systemd/units/systemd-tmpfiles-setup.service.in /systemd/units/systemd-update-utmp-runlevel.service.in /systemd/units/systemd-update-utmp-shutdown.service.in /systemd/units/systemd-user-sessions.service.in /systemd/units/systemd-vconsole-setup.service.in /systemd/units/time-sync.target /systemd/units/tmp.mount /systemd/units/umount.target /systemd/units/user/default.target /systemd/units/user/exit.service.in /systemd/units/user/exit.target /systemd/units/user@.service.in
b30e2f4c18ad81b04e4314fd191a5d458553773c 11-Apr-2012 Kay Sievers <kay@vrfy.org>

move libsystemd_core.la sources into core/

/systemd/Makefile.am /systemd/po/POTFILES.skip ask-password-api.h automount.c automount.h build.h bus-errors.h cgroup-attr.c cgroup-attr.h cgroup.c cgroup.h condition.c condition.h dbus-automount.c dbus-automount.h dbus-device.c dbus-device.h dbus-execute.c dbus-execute.h dbus-job.c dbus-job.h dbus-loop.h dbus-manager.c dbus-manager.h dbus-mount.c dbus-mount.h dbus-path.c dbus-path.h dbus-service.c dbus-service.h dbus-snapshot.c dbus-snapshot.h dbus-socket.c dbus-socket.h dbus-swap.c dbus-swap.h dbus-target.c dbus-target.h dbus-timer.c dbus-timer.h dbus-unit.c dbus-unit.h dbus.c dbus.h device.c device.h execute.c execute.h fdset.c fdset.h ima-setup.c ima-setup.h initreq.h job.c job.h kmod-setup.c kmod-setup.h load-dropin.c load-dropin.h load-fragment.c load-fragment.h locale-setup.c locale-setup.h manager.c manager.h mount.c mount.h namespace.c namespace.h path.c path.h polkit.h securebits.h selinux-setup.c selinux-setup.h service.c service.h snapshot.c snapshot.h socket.c socket.h spawn-agent.h special.h swap.c swap.h sysfs-show.h target.c target.h tcpwrap.c tcpwrap.h timer.c timer.h unit.c unit.h